Jump to content


Photo

An explanation to why there was no Save/Load function in Mental Omega


  • This topic is locked This topic is locked
78 replies to this topic

#21 Steelpoint

Steelpoint
  • Members
  • 23 posts
  • Location:Australia

Posted 26 December 2016 - 02:25 AM

The save/load issue was more pronounced in the older version of Mental Omega 3.0, where even on Easy many campaign missions were very difficult. This is not as much the case due to the difficulty tweaks somewhat softening the difficulty on Easy and Medium to a extent.

 

My personal desire to see a save/load feature is more to help in finishing missions that can last over a hour or even longer, and for many baseless missions (so most of Epsilon) where unexpected events can result in mission failure (Borrilio with Conscripts killing the Engineer on 'Heaven and Hell' is a prime example).


Edited by Steelpoint, 26 December 2016 - 02:26 AM.


#22 Wargame-dono

Wargame-dono
  • Members
  • 24 posts

Posted 27 December 2016 - 06:11 AM

you still dont get it kid did read what alexb saids about that issue?



#23 Steelpoint

Steelpoint
  • Members
  • 23 posts
  • Location:Australia

Posted 27 December 2016 - 09:59 AM

you still dont get it kid did read what alexb saids about that issue?

 

I fully understand the situation, I was simply giving a good reason as to why in the past and present that a save/load feature would be seen as desirable. I feel that in the older version that the feature was much easier to notice as being missing due to the high difficult of the game even on the easiest of difficulties, which is no longer the case.



#24 lovalmidas

lovalmidas

    Yunru Kanegawa. Go figure. Go mental.

  • Project Team
  • 1,192 posts
  • Location:Singapore
  • Projects:Mental Omega Almost Perfect Yunru's Revenge Version 3.0
  •  Why am I not in the Centurion?

Posted 27 December 2016 - 10:57 AM

Or reducing the typical time/difficulty of the existing missions.

 

Trust me, if save games existed, my missions would be harder than their 3.0 iterations, and longer, that they may qualify as mini-campaigns.  :p if Speeder allows... oh hoho 2.5 hour Aegis Impervious... hehehe.


Edited by lovalmidas, 27 December 2016 - 10:58 AM.

30m70ag.png

 

Mental Omega on the web:
fbbutton.png ytbutton.png mdbutton.png dsbutton.png
IRC: #menthosogma (Rizon)

 


#25 Handepsilon

Handepsilon

    Firestorm Gnome

  • Members
  • 2,325 posts
  • Location:Indonesia
  • Projects:Renegade X: Firestorm
  •  *intensely rolls around*

Posted 28 December 2016 - 12:28 AM

2.5 hour? Meh. I did Idle Gossip for 2 hours. And that's 3.3's iteration.... ON EASY

Edited by Handepsilon, 28 December 2016 - 12:28 AM.

I like gnomes
 
YunruThinkEmoji.png
 
Visit us in Totem Arts site
(Firestorm is still SoonTM)


#26 Solais

Solais

    Conspiracy Theorist

  • Members
  • 1,648 posts

Posted 28 December 2016 - 12:33 AM

Yeah, but Idle Gossip on Easy is really easy. You can take your time with it. For me, it was around an hour.



#27 Handepsilon

Handepsilon

    Firestorm Gnome

  • Members
  • 2,325 posts
  • Location:Indonesia
  • Projects:Renegade X: Firestorm
  •  *intensely rolls around*

Posted 28 December 2016 - 12:49 AM

Well, yeah. The main reason is because they keep rebuilding their cannons, and I thought I need to destroy one tower before the Mercury fires :l

Edited by Handepsilon, 28 December 2016 - 12:49 AM.

I like gnomes
 
YunruThinkEmoji.png
 
Visit us in Totem Arts site
(Firestorm is still SoonTM)


#28 X1Destroy

X1Destroy

    title available

  • Members
  • 660 posts
  • Location:Holy Terra

Posted 28 December 2016 - 06:19 PM

One of the most ridiculous thing in maps like Idle Gossip was base defenses keep popping up at the same spot they was destroyed. It doesn't make the mission any harder, just delay the player from reaching the main base.

I just felt bored and decided to do a god know how many spam of borillos and be done with it.


Edited by X1Destroy, 28 December 2016 - 06:20 PM.

"Protecting the land of the Free."
efXH1rz.png
 


#29 Handepsilon

Handepsilon

    Firestorm Gnome

  • Members
  • 2,325 posts
  • Location:Indonesia
  • Projects:Renegade X: Firestorm
  •  *intensely rolls around*

Posted 28 December 2016 - 06:47 PM

One of the most ridiculous thing in maps like Idle Gossip was base defenses keep popping up at the same spot they was destroyed. It doesn't make the mission any harder, just delay the player from reaching the main base.

I just felt bored and decided to do a god know how many spam of borillos and be done with it.

I used Scud covered by Wolfhounds myself, much more cost effective in terms of possible casualties. But yeah, as if it's not enough, sometimes they just decide to pop their buildings in random places if the original place is not available, like that one time in 3.0 Eagle Fly Free, the russians build a sentry gun out of nowhere near my ore field, and that other time in 3.3 Think Different where the Pacific Front built a barracks next to my war factory and starts popping Cadres, Rocketeers, and God.... SEALs. All that while ignoring the law of construction radius


I like gnomes
 
YunruThinkEmoji.png
 
Visit us in Totem Arts site
(Firestorm is still SoonTM)


#30 Solais

Solais

    Conspiracy Theorist

  • Members
  • 1,648 posts

Posted 29 December 2016 - 08:34 AM

I've been thinking about something. How come Ares can't do save games, but it can sync to a network, enabling online multiplayer? As far as I know, a netcode is much more difficult to do than saving, so much that some developers prefer to not have online multiplayer in their games at all. Unless, that's actually the secret of the project. How originally, most RA2 mods were multiplayer only, and such when the original team started Ares, they never even considered a mod having a singleplayer campaign.


Edited by Solais, 29 December 2016 - 08:35 AM.


#31 Starkku

Starkku

    Putting the Pro' in 'Procrastination'

  • Hosted
  • 436 posts
  • Location:Finland
  • Projects:Project Phantom
  •  Developer of Project Phantom mod for C&C: Yuri's Revenge.

Posted 29 December 2016 - 12:16 PM

I've been thinking about something. How come Ares can't do save games, but it can sync to a network, enabling online multiplayer? As far as I know, a netcode is much more difficult to do than saving, so much that some developers prefer to not have online multiplayer in their games at all. Unless, that's actually the secret of the project. How originally, most RA2 mods were multiplayer only, and such when the original team started Ares, they never even considered a mod having a singleplayer campaign.

 

Without knowing absolute specifics, I presume this is because of a fundamental difference in a process of saving a game and syncing info through a network. In former, you have to serialize all game data such as instances of various classes and their properties and the current values used for them into a format that can be stored on hard drive or an equivalent. If you expand upon the classes, which Ares has done to many of them, the old data serialization functionality will most likely omit everything new you added.

 

Not all of the information is required to be transferred via network events. For an example, only active properties of a vehicle unit like it's current HP, cell of residence etc. need to be synced, not the entire VehicleType class structure. The existing network events do the job here just fine (especially since some of the new features in Ares are actually built on top of existing ones, like AttachEffect stat modifiers actually use exact same properties as the crate stat boons), with Ares only adding few new ones for handling of game logic entirely absent from the game in first place such as Firestorm Wall.


eWPQbKY.png


#32 Solais

Solais

    Conspiracy Theorist

  • Members
  • 1,648 posts

Posted 29 December 2016 - 12:37 PM

Hmm I see. Still, I see this as a hopeful that saving might not be actually that difficult to implement eventually.

 

I mostly asked this, because I just remembered that in my last modding project, before I became a full-on developer, I also came to blows with the limitation of a save system. However, I found out after a while, that where saving failed, network sync also failed; however, there were often parts where network sync failed while saving somehow still worked (which lead to me customizing the mod for SP and MP separately). So it led me to believe that network sync is somehow related, is more complex (well netcode IS complex as I heard), and if Ares can work with that, then it could be a potential help in finding another solution for saving as well based on network data. At least, this was my thought process, without actually knowing what's going on under the hood.



#33 Handepsilon

Handepsilon

    Firestorm Gnome

  • Members
  • 2,325 posts
  • Location:Indonesia
  • Projects:Renegade X: Firestorm
  •  *intensely rolls around*

Posted 30 December 2016 - 12:49 AM

Well to be fair, back in 3.0, my friends and I almost never managed to finish 3 way battle in long term because desyncs (we did finish KOTH sometimes and one Bomb Derby). Even the game sometimes desyncs with only two people

And yes, netcode IS complicated

Edited by Handepsilon, 30 December 2016 - 12:51 AM.

I like gnomes
 
YunruThinkEmoji.png
 
Visit us in Totem Arts site
(Firestorm is still SoonTM)


#34 Graion Dilach

Graion Dilach

    Supérior Caliburwielder

  • Project Team
  • 2,187 posts
  • Location:Iszkaszentgyörgy, Hungary
  • Projects:Infinty Engine modding, OpenHV, Attacque Supérior (sometimes)
  •  That guy you keep hearing the stories about.

Posted 30 December 2016 - 01:33 PM

@Solais, at this point, I'd really dwelve into the fundamentals of coding practices, because currently you're theorizing a black box. Especially as a dev (although I don't know what area you specced to).

Netcode is complex, but if it's properly set up, then it's actually quite easy to maintain. Agaion, OpenRA example - netcode works almost flawlessly (it's more stable) because the core setup is fixed, asin actors have traits attached to them and they have an activity order either populated by orders (both explicit aka player input or implicit, like say automatic harvester behaviour) and you only have to record the orders happening, because even UI things like production is an order to the producing actor which gets resolved by the production trait to do it's job. This also means that recording the orders gives you replays. Traits can also have internal variables stated synced for desync detection - the setup can mean that the variables never need to be sent over between the clients directly, just their hash compared, since all the code modifying them should be predeterminated (which both trait code and order resolution should be).

Ofcourse there can be times when this goes off - say, by using the wrong random number generator (because there's one for the rendering, unsynced between the cliernts and one linked to the world state which is synced and will yield the same values between them) - but then the result will speak for itself. I won't deny, I had this issue when I started creating the AS logics plugin for OpenRA, but I've learnt that lesson since.

Edited by Graion Dilach, 30 December 2016 - 01:37 PM.

kuuHd4s.png6pDXsCS.png
n0J1wqE.pngIX8pBXZ.png

AS Discord server: https://discord.gg/7aM7Hm2

ComradeCrimson: AS is the product of Hungarian acid
ComradeCrimson: And magical hussars
Dutchygamer: and Weird Al.


#35 Solais

Solais

    Conspiracy Theorist

  • Members
  • 1,648 posts

Posted 30 December 2016 - 01:57 PM

@Solais, at this point, I'd really dwelve into the fundamentals of coding practices, because currently you're theorizing a black box. Especially as a dev (although I don't know what area you specced to).

As said above, I'm no coder, I'm mostly a game/gameplay/level designer. I'm approaching things from that viewpoint first and foremost.


Edited by Solais, 30 December 2016 - 01:57 PM.


#36 Graion Dilach

Graion Dilach

    Supérior Caliburwielder

  • Project Team
  • 2,187 posts
  • Location:Iszkaszentgyörgy, Hungary
  • Projects:Infinty Engine modding, OpenHV, Attacque Supérior (sometimes)
  •  That guy you keep hearing the stories about.

Posted 30 December 2016 - 05:45 PM

Well, gameplay design sounds like a reason to get accustomed to the internal structure of the engine at least. :p
kuuHd4s.png6pDXsCS.png
n0J1wqE.pngIX8pBXZ.png

AS Discord server: https://discord.gg/7aM7Hm2

ComradeCrimson: AS is the product of Hungarian acid
ComradeCrimson: And magical hussars
Dutchygamer: and Weird Al.


#37 Solais

Solais

    Conspiracy Theorist

  • Members
  • 1,648 posts

Posted 30 December 2016 - 06:15 PM

I don't exactly have access to it, because I'm not a coder. Those who are not coders have no access to the engine internals. At least, when it comes to our engine, not the RA2 one. :V



#38 AlexB

AlexB
  • Members
  • 143 posts
  • Location:Germany
  • Projects:Ares, Arda, ...
  •  Your ad here!

Posted 30 December 2016 - 08:21 PM

The net code is totally unrelated to savegames, and in the ordinary case, none of the data from new features Ares added needs to transferred over network. Currently, there is only one new network event Ares added, and it's related to traversing trenches. There was one more for the Firestorm Walls as Starkku pointed out, but I have removed that one when reworking the logic. This also means that, if you are not using the trench logic, Ares does not add any network overhead at all.

YR also has something that could be considered orders like Graion pointed out. Only human-initiated orders the game can't know about have to be transferred at all. All other orders can be inferred from the game's current state. For instance, if you select a harvester and press G, this is tranferred. The harvester will then automatically harvest and unload at the refinery in a loop. Nothing of that needs to be transferred. It works automatically until the owning player gives another manual order like Stop.

Features like initial playload, AttachEffects, new weapon effects and so on work completely without network transfers. Ares can't use certain game engine functions at certain times, and it has to be careful not to desynchronize the game (wrong use of randomizer, for example). It is like a house of cards, stable, as long as everything is in its place. The Ares devs focused on this stability.

In short: Network transfer is filling the gaps. It adds human orders into a game that otherwise completely runs on auto-pilot. Not saying it's not complicated as hell already. Savegames on the other hand capture everything, but at least they don't have a bandwidth limitation. Completely different.

#39 Solais

Solais

    Conspiracy Theorist

  • Members
  • 1,648 posts

Posted 30 December 2016 - 08:33 PM

I see.



#40 Flandre

Flandre

    Saury Hunter

  • Members
  • 311 posts
  • Location:Scarlet Devil Mansion
  •  Defense Order

Posted 25 January 2017 - 02:24 AM

Just reminder that not everyone is capable of playing that long and some are casual players


3qPyjQ8.png

 

 

 

 

 

 

 

 

 

 





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users