Jump to content

The Legacy of Emperors


R58I w/Savestates

Overview
Download
(7.61 MB)
Genre: Other Added: 11 May 2015 Downloads: 81 Rating[?]:
Overview
11th May, 2015, Mid Morning: Thanks to Moosh, for finding a bug @ d40s21. Rev 58I corrects this.

Build Update as of 11th May, 2015 (Early Morning):

This adds additional save, and debug features.
  • Savestate now includes all inventory items (active, and passive), plus fix an MCounters backup bug (copy Game->Counter to Game-MCounter).
  • Intro text no longer repeats, period. Testing in this area repeatedly made it extremely annoying.
  • Other optimisation.
  • Debug Menu expanded to include:
  • Toggle Cheat
  • Enable All Equipment
  • Maximise Counters
  • Maximise (only) Health and Magic
All useful for testing, and debugging.


Prior build as of 9th May, 2015 (58F). This incorporates some new FFCs, for area titles, that allow either simple Screen->D states, or global array states to set them. Note, that I have set them to repeat perpetually for the present, as I still have to sort out some details on Screen->D register use, and I won't be able to shift them into a state array until I actually design areas to use them.

The game gives a brief intro when first loading, before saving. This will repeat if you return to the starting screen, because the array that's supposed to hold the value 'shown' for that reference isn't done, but it won;t return once you save even one time using the Game->Save menu.I don't actually recall if F6->Save clears it, as I've stopped using that in LoE, now that I have direct save commands in the menus...

New item, 'Teleportation Matrix', allows player to set up to six spots (any dmap, screen, and legal x/y) and later revisit them instantly (costing MP). This should offset some of the people who will whine about F6 penalties later on; although they will undoubtedly still whine, for the sake of whining.

New Features (since the last public update in September, 2014...)
Game Menu-> Includes Save, Restore, and Debug commands. Save allows quick saving (similar to a save state) that a tester can use to quickly save the game, and use the Game->Restore option to restore the state. This does not yet save all game variables, nor does it save enemies, but it does save position, counters, and some game variables. At present, it saves the following:
  • All location variables (dmap, screen, x, y) for 'Link'.
  • All counters, including health, magic, and so forth. The way I do this may need some later expansion for MCounter, as I realised that I'm not storing MCounter for inventory disposables, such as bombs, so that will be in the next update.
  • All inventory items.
  • Some arrays.
This means that you can do a 'Quick Save', and retain all your equipment, however it does not yet save level items, as those are stored bitwise, and not in a handy internal array ( e.g. Link->Item[] ), so they're more painful to implement. A 'Full Save' will both savestate, and store the level items though, and you can save without returning to the game file select screen, which is handy.

Full Save, does a quick save, and also saves the game properly without exiting. A player / tester may do this at any time.
Save and Quit does what it says on the tin.
'CLEAR STATE' wipes the state array. Useful for debugging / testing.Not wise to do at random; separated from main menu choices.

I need to add a 'Quit w/o Saving' option to the menu next, as I managed t forget about that, however I'm not certain if Game->End() is precisely the same as F6->Retry, or if either, or both run the onExit script. I literally don't remember, and I used to know this. Bugger.

The Debug menu allows a tester to print information to their Allegro.log, if they encounter a bug on a screen, rather than bothering to screenshot it. The Allegro.log will record the x/y/dmap/screen datum, and store it for later review.

A new opening area is in place, to better reflect some of what I have planned here. It's set up to test some of the new features too, and the game now opens with some helpful information, that you thankfully won't need to see each time you load it.

Otherwise, many of the internal code changes are still a work-in-progress. Many are installed, but nothing at present is making use of them that is visible on the user-end. The next task is to fully convert all of the variables in every script, into one array. I've been doing that a bit at a time. Thereafter, I can fix all the functions, and all the scripts to use those instead, and after that, I can test the new code. Whew.

Reviews

No reviews found!