Pre-req for making CoX into a off-line game?


Chad Gulzow-Man

 

Posted

What would need to happen in order to make CoX playable completely offline?

Programming? Extra HD space? Better CPU, etc?


Apparently, I play "City of Shakespeare"
*Arc #95278-Gathering the Four Winds -3 step arc; challenging - 5 Ratings/3 Stars (still working out the kinks)
*Arc #177826-Lights, Camera, Scream! - 3 step arc, camp horror; try out in 1st person POV - 35 Ratings/4 Stars

 

Posted

Quote:
Originally Posted by Yogi_Bare View Post
What would need to happen in order to make CoX playable completely offline?

Programming? Extra HD space? Better CPU, etc?
Roughly anything that you experience lag with when playing on a poor connection would need to be redone, and yes, that does also mean the removal of player tracking (notice the rubber banding when playing with bad lag?)

Market place, combat/power system, mob spawning/combat/AI, zoning (I have had "interesting" problems when my connection dropped whilst zoning many years back).

Probably other stuff that I forget, but i believe that those are the biggies.


 

Posted

Too much to do solo unless you are l33t hax0r.

Each part of the game can be broken down into these categories, on the server side:

Character information. Positional information in both simply xyz as well as arm and leg positions, and orientation. Same for NPCs and Enemies. All this information has to be relayed back to you, and all people see the same information. If the defeated enemy is face down, and 'pointing' northwest, all people see this basic positional status.

This DOES NOT include Propelled items, those are random at the client side. Just where they are is important, nothing else. Your computer decides and keeps track of the item. It also does not include Ragdoll information, I think. One may see a twisted up pretzel, where another might see a straight Exorcist defeat.

And that is just the character information. Your client sends back commands telling the server what you want your character to do, and as mentioned, lag can cause the server to tell the client 'hold on', or 'move back to here, this is where I have you' (rubberband)

The server calculates where you're supposed to be, or whether your power is reset or all that stuff, and sends back the pertinent info as needed. This is why the power lag/rubberband happens especially in a busy map, such as during a raid. Server's got a LOT to do..

Then there's the mission engine, which uses all that, but adds the rules and logic to make the mission 'go'. This DOES NOT include the words. Just how the opposing enemies work, and placements on the maps for them and any glowies. This is an independent, yet dependent, engine from the character and NPC/Enemy engines.

If you could figure out all those, then you could do an offline server that would probably maybe work solo on one decently powered computer, but would likely be better if it were a stand alone networked computer.

And I've not talked about the authentication of your account and all that noise. If you wanted to play your current characters, that has to be figured out first, I'd think.

I'm thinking everything else is client side. Again, the demorecords show the game *can be run* offline. The piggs have all the information in them, and the game just renders the data. This also means that your character information, what they look like anyway, is there. And with Sentinel+, the powers and enhancements are known, as well as badges, accolades, etc.

But that is a LOT of speculation on things. Just thinkin' about what's client, and what's server, and throwing darts. Realistically, though, it would really take a Dev to say "Here. This is how.". Or better yet, "Oops, I accidentallied the server code onto the intarwebs. My bad."

Bettin' that last doesn't happen.

Mike


August 31, 2012. A Day that will Live in Infamy. Or Information. Possibly Influence. Well, Inf, anyway. Thank you, Paragon Studios, for what you did, and the enjoyment and camaraderie you brought.
This is houtex, aka Mike, signing off the forums. G'night all. - 10/26/2012
Well... perhaps I was premature about that whole 'signing off' thing... - 11-9-2012

 

Posted

Quote:
Originally Posted by houtex View Post
But that is a LOT of speculation on things. Just thinkin' about what's client, and what's server, and throwing darts. Realistically, though, it would really take a Dev to say "Here. This is how.". Or better yet, "Oops, I accidentallied the server code onto the intarwebs. My bad."

Bettin' that last doesn't happen.
Didn't it happen once though? Like, back when the game had just launched. I have some vague recollection of it.


 

Posted

Quote:
Originally Posted by houtex View Post
Too much to do solo unless you are l33t hax0r.

Each part of the game can be broken down into these categories, on the server side:

Character information. Positional information in both simply xyz as well as arm and leg positions, and orientation. Same for NPCs and Enemies. All this information has to be relayed back to you, and all people see the same information. If the defeated enemy is face down, and 'pointing' northwest, all people see this basic positional status.

This DOES NOT include Propelled items, those are random at the client side. Just where they are is important, nothing else. Your computer decides and keeps track of the item. It also does not include Ragdoll information, I think. One may see a twisted up pretzel, where another might see a straight Exorcist defeat.

And that is just the character information. Your client sends back commands telling the server what you want your character to do, and as mentioned, lag can cause the server to tell the client 'hold on', or 'move back to here, this is where I have you' (rubberband)

The server calculates where you're supposed to be, or whether your power is reset or all that stuff, and sends back the pertinent info as needed. This is why the power lag/rubberband happens especially in a busy map, such as during a raid. Server's got a LOT to do..

Then there's the mission engine, which uses all that, but adds the rules and logic to make the mission 'go'. This DOES NOT include the words. Just how the opposing enemies work, and placements on the maps for them and any glowies. This is an independent, yet dependent, engine from the character and NPC/Enemy engines.

If you could figure out all those, then you could do an offline server that would probably maybe work solo on one decently powered computer, but would likely be better if it were a stand alone networked computer.

And I've not talked about the authentication of your account and all that noise. If you wanted to play your current characters, that has to be figured out first, I'd think.

I'm thinking everything else is client side. Again, the demorecords show the game *can be run* offline. The piggs have all the information in them, and the game just renders the data. This also means that your character information, what they look like anyway, is there. And with Sentinel+, the powers and enhancements are known, as well as badges, accolades, etc.

But that is a LOT of speculation on things. Just thinkin' about what's client, and what's server, and throwing darts. Realistically, though, it would really take a Dev to say "Here. This is how.". Or better yet, "Oops, I accidentallied the server code onto the intarwebs. My bad."

Bettin' that last doesn't happen.

Mike
Sounds like a lot of work. No wonder not many MMOs ever make it to console and vice versa.


-Female Player-
Quote:
Originally Posted by mauk2 View Post
Evil_Legacy became one of my favorite posters with two words.
"Kick Rocks."
I laffed so hard. Never change, E_L!

 

Posted

Quote:
Originally Posted by Evil_Legacy View Post
Sounds like a lot of work. No wonder not many MMOs ever make it to console and vice versa.
The MMOs that make it to consoles are still server-based. Like on a PC client, the console client really only has to worry about handling what the player sees and hears, and gets messages from a server that tells it when and where to display them.

Likewise, the bulk of a player's client installation is graphic and audio files. The server program is going to have little if any of that, so it'll appear to be much smaller... but will in fact contain a lot more (in both number and complication) code.


Main Hero: Chad Gulzow-Man (Victory) 50, 1396 Badges
Main Villain: Evil Gulzow-Man (Victory) 50, 1193 Badges
Mission Architect arcs: Doctor Brainstorm's An Experiment Gone Awry, Arc ID 2093

-----
Quote:
Originally Posted by Nethergoat View Post
it's NEVER too late to pad your /ignore list!

 

Posted

Short answer: most of the actual "game" is server-side and not preset in the code you install on your computer. The client just translates raw data into pretty pictures and lets you tell the game what you want to do... all the actual movement, power use, inventory management, AI, etc... happens on the server. That means any attempt to make a single-player version would require recoding the server software to directly interface with the client instead of connecting over the net, and would significantly increase system requirements. And by "significantly" I mean you'd need your own blade server to run the game...

Alternatively, a ton of recoding to scale the server software down to single player levels and integrate it with the client so it can run on a normal PC... which would probably take about half the work of writing a new game from scratch.


Cascade, level 50 Blaster (NRG/NRG since before it was cool)
Mechmeister, level 50 Bots / Traps MM
FAR too many non-50 alts to name

[u]Arcs[u]
The Scavenger Hunt: 187076
The Instant Lair Delivery Service: 206636

 

Posted

Thanks for all the input given so far. and


Apparently, I play "City of Shakespeare"
*Arc #95278-Gathering the Four Winds -3 step arc; challenging - 5 Ratings/3 Stars (still working out the kinks)
*Arc #177826-Lights, Camera, Scream! - 3 step arc, camp horror; try out in 1st person POV - 35 Ratings/4 Stars