Pages: 1 2 »
  Print  
Author Topic: New LGM Backend Map/List  (Read 19041 times)
Offline (Female) IsmAvatar
Posted on: November 20, 2011, 02:54:58 pm

LateralGM Developer
LGM Developer
Location: Pennsylvania/USA
Joined: Apr 2008
Posts: 877

View Profile Email
As of LateralGM r549 and ENIGMA r944 (and later), a new LGM backend system has been put in place. The prior system made heavy use of hard-coded lists for each resource type, which was not modular - meaning that it was causing difficulties for adding new resource types (like Overworlds and Definitions et al). The new system completely modularized this so that everything is put in a map, and may either be a non-instantiable resource (like Game Info) or instantiable (like Sprites). The former system didn't include non-instantiable resources in the map, so this is somewhat new territory.

That said, since this is somewhat new territory, we are proceeding with CAUTION. Although I have tested this pretty thoroughly, it's still hard to anticipate all the potential problems this could cause. Please back up your important games before using the new revisions. Please keep an eye open for any resources behaving strangely - including Game Settings, Game Information, and Enigma Settings. One hypothetical example of behavior that would be considered strange: "I press new game, and look at my Game Settings, and it's set this one way. I press new game again, and look at Game Settings, and now the settings are completely different." So keep an eye out for anything like that that might happen.


Also, this warning applies to the next several revisions as well:
1) Oftentimes revisions will update unrelated stuff, so any existing bugs will not necessarily be corrected.
2) Work is going to continue in this modularization in order to bring us new resource types (like Overworlds and Definitions) based on this new backend (which now allows us to do this). Some of the bugs I may have introduced may be hidden, but will be brought forward and made more visible with these new changes.



On the other hand, it's entirely possible (and likely) that this change was so smooth that it caused no new bugs or issues.

Either way (TL;DR version):
1) It's always good practice to back up your games, ESPECIALLY when using LateralGM/ENIGMA.
2) LateralGM is becoming more and more modular, which means that we're really starting to open the doors for new resource kinds.
3) If you notice a bug or strange behavior, as always, report it.
« Last Edit: November 21, 2011, 11:02:42 am by IsmAvatar » Logged
Post made November 21, 2011, 02:55:07 am was deleted at the author's request.
Offline (Male) Josh @ Dreamland
Reply #2 Posted on: November 21, 2011, 08:43:34 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2950

View Profile Email
Glad to hear you have that done, Ism.

Fede:
Depends how you make the array.

string array[10000]; // Yes
var array; array[10000] = 0; // No
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Rusky
Reply #3 Posted on: November 21, 2011, 11:32:53 am

Resident Troll
Joined: Feb 2008
Posts: 954
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
Also: {,unordered_}map<int, string> array; array[10000] = ""; // No
Logged
Offline (Male) RetroX
Reply #4 Posted on: November 21, 2011, 03:18:08 pm

Master of all things Linux
Contributor
Location: US
Joined: Apr 2008
Posts: 1055
MSN Messenger - classixretrox@gmail.com
View Profile Email
Fede: Plain arrays just allocate a chunk of memory, whereas the containers that you'll probably use will just constantly add memory when more is needed.  Containers referring to maps, var, etc.
Logged
My Box: Phenom II 3.4GHz X4 | ASUS ATI RadeonHD 5770, 1GB GDDR5 RAM | 1x4GB DDR3 SRAM | Arch Linux, x86_64 (Cube) / Windows 7 x64 (Blob)
Quote from: Fede-lasse
Why do all the pro-Microsoft people have troll avatars? :(
Post made November 22, 2011, 02:51:21 am was deleted at the author's request.
Offline (Male) Josh @ Dreamland
Reply #6 Posted on: November 22, 2011, 02:17:37 pm

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2950

View Profile Email
So uh, when do I get my Definitions resource, IsmAvatar?
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Female) IsmAvatar
Reply #7 Posted on: November 22, 2011, 08:49:48 pm

LateralGM Developer
LGM Developer
Location: Pennsylvania/USA
Joined: Apr 2008
Posts: 877

View Profile Email
Working on them as I speak.
Logged
Post made November 23, 2011, 02:56:45 am was deleted at the author's request.
Offline (Female) IsmAvatar
Reply #9 Posted on: November 23, 2011, 09:48:43 pm

LateralGM Developer
LGM Developer
Location: Pennsylvania/USA
Joined: Apr 2008
Posts: 877

View Profile Email
Between a screenshot, the latest revision, and a boolean variable that you can change to see them in action, I'm pretty sure Josh is already convinced that I'm working on them.
Logged
Post made November 24, 2011, 02:42:20 am was deleted at the author's request.
Offline (Male) Josh @ Dreamland
Reply #11 Posted on: November 24, 2011, 11:11:55 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2950

View Profile Email
/kick Fede-lasse
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Post made November 25, 2011, 02:48:13 am was deleted at the author's request.
Offline (Unknown gender) EnigmaBot
Reply #13 Posted on: November 26, 2011, 05:00:46 pm

Member
Joined: Jun 2011
Posts: 1

View Profile Email
Welcome back, Fede-lasse. Your last visit was 2011-11-24@02:42:20.
Logged
Post made November 26, 2011, 07:03:04 pm was deleted at the author's request.
Pages: 1 2 »
  Print