Romhacking, Lex Talionis, Tactile, and SRPG Studio. An engine comparison post. (Which game creation engine will best suit your needs?)

Alright, everyone. I have made a bunch of notes and will update the OP either tonight or tomorrow. Here is what I have jotted down; it has not been organized or cleaned up and these are my raw notes.

General

  • My credentials with each engine
  • Engine Issues section, stuff the engine or its output-games have issues doing or dealing with
  • Update the Resource Import section to mention spell animations
  • A section for multi-lingual support. So far all of the engines come up pretty short, but SRPG does seem to have more options than the others. FEBuilder does have pretty easily-editable translation files for the engine, and it has native Japanese/English support as well. Mention that SRPG Studio is the only non-native English option, leading to Engrishy-screens.
  • An in-chapter save option should be mentioned. Tactile has battle saves, GBA has savestates, SRPG has this https://i.imgur.com/PbLng14.png etc, and LT can allow you to make checkpoint saves too. There’s also an autosave patch for FEB so roms can have chapter saves without using savestates. (A more vanilla-friendly, less cheaty experience.)
  • Also SRPG has suspend saves, autosaves, ironman savescum prevention, and other such plugins.
  • Games made with LT and Tactile and SRPG can in theory connect to the internet for multiplayer shenanigans, auto-updates, whatever, but GBA roms cannot. All of the engines obviously have internet connectivity.

ROM Hacking

LT

Tactile

  • Tactile game sizes can get fucking nuts, Ryn had a 1.77 GB project via his FE8 remake (Definitely some major optimization issues there bud)
  • Tactile is not on apple devices, only android. It works alright on Linux but until Yeti switches to Monogame, a more modern XNA, Tactile will continue to have issues in non-windows environments.
  • Yeti is actually thinking about making a Skill Editor somewhat similar in implementation to LT’s. No ETA on this so it only remains in the realm of possibility for now.
  • ‘Tactile BEXP’ is actually just for FE7x only, so, not applicable for the public.
  • Killer Feature: The Unit Placer

FEXP

  • Remove FEXP from most sections, it’s just a joke option and it only serves to add pointless fluff.
  • Mention that FEXP is actually viable if and only if you are already a Ruby coder, then don’t mention it again.

SRPG Studio

  • Mention SRPG’s robust plugin system (FEB and Buildfiles have something similar, LT sort of does, Tactile does not) And that you can also get Plugins via the Steam Workshop and their Discord.
  • Halfbodies do exist in SRPG, see this tutorial https://imgur.io/a/O2ak1Ih and this one Tutorial - Character Illustrations in Talk Events | SRPG Studio Wiki | Fandom
  • GBAFE supports in SRPG Studio do exist https://imgur.io/a/O2ak1Ih and a FE9-style support system is possible https://i.imgur.com/1L2Wx8B.png
  • SRPG skills can be customized through the Custom option here https://i.imgur.com/4SfwmPf.png and many skills themselves have arbitrarily adjustable values by default which is better than FEBuilder’s options https://i.imgur.com/hGD4Par.png
  • There might be eye-blinking plugins for SRPG? And potentially mouth flap options as well. So the GBA talky-stuff is actually doable.
  • There are many tutorials for SRPG, but they aren’t as in-depth or as concise as what GBA and LT have. This is an issue for Tactile too. (Note: Need a ‘quality of tutorials’ section)
  • Many FE9-10 things I mentioned for FE9/10 and etc are in SRPG, as well as GBA.
  • SRPG does have customizable AI similar to LT, and it sounds pretty in-depth thought I’m not sure of the specifics. https://i.imgur.com/ONZar9R.png
  • SRPG’s games have editable UI but it’s not as ‘simple’ as in LT, and you have to use Javascript. It DOES sound a lot easier than editing the UI in GBA or Tactile though.
  • SRPG is not open source. The editor specifically cannot be changed or updated to improve its design, which could be a big negative, while LT’s is fully open-source.
  • SRPG has a bunch of hidden options by default. https://i.imgur.com/xIJofla.png
  • SRPG is windows-locked entirely, no mobile options at all, besides maybe the Steam Deck.
  • SRPG does actually use NIDs, identical to LT, so it’s easy to reorganize internally without breaking games. Great!
  • Free-roam is in SRPG as well, as evidenced by this project. Seas of Novis [v0.1.1]

This list isn’t actually complete and I’ll be adding more. I just wanted people to see that I’m carefully looking into all the points people have brought up, especially WRT SRPG Studio. It seems the engine is vastly deeper than I expected!

2 Likes

As an implementation, I think we could use the OS font to draw what is not in the existing fonts.
That would not be a very pretty font, but I think it is better than no font being rendered.

If it is configurable, I think if we can specify the ttf file name and font size, then the user can specify the rest on their own.
If that is not specified, I think we should just use the default font of the Windows OS and draw characters that are not in the game.

A number of free fonts are available for public use.
Among them are fonts for small displays.
For example, the misaki font is a free font available in 8x8 dot that implements all the common kanji characters of the Japanese language.

//misaki font 8x8 dot
https://littlelimit.net/misaki.htm

//misaki font 8x12 dot
https://littlelimit.net/k8x12.htm

With the no-tofu project, google is releasing fonts for the world’s free character codes.

//google no-tofu

If we leave room for these fonts to be made available to users, they could be bundled with the game when it is distributed.
In that case, the file size would increase a bit, but I think that is unavoidable.

Since the game runs on a PC, I don’t think we need to worry about capacity, since it is not subject to the GBA’s 32 MB file constraint.
Because one hour of FHD video streaming on Youtube is more than 1 Gbyte of data.
Today, we are in the 21st century, when these streaming services are commonplace.
Data up to 1G would be considered small data.
So I don’t think you should worry too much about the capacity.

On the contrary, we should take advantage of capacity limits and always-on connections for our games.
In particular, I think automatic feedback is a very nice feature and I recommend that it be implemented.
Because most users do not send feedback.
Even if they did, they would only send elementary school-level reports such as “it was fun”.
It is rare for people to stream a game and send us detailed feedback or write and send us a detailed play report.
I think there is value in the ability to get detailed feedback without having to rely on those things.

1 Like

12 Games made with LT and Tactile and SRPG can in theory connect to the internet for multiplayer shenanigans, auto-updates, whatever, but GBA roms cannot. All of the engines obviously have internet connectivity.

About internet, I would like to add that it is not available on the GBA ROM, but it is possible if the game is played using FEBuilderGBA.
FEBuilderGBA uses the WorkSupport feature to automatically update games and provide automatic feedback.
Several games have already implemented this mechanism.
https://dw.ngmansion.xyz/doku.php?id=en:guid:febuildergba:work_support

NID

There is no NID on the GBA, but if you just want to change the order of items in the game, there is a patch I made.
This patch allows you to change the order of items in Supply in the game to whatever you want instead of ItemID.

NAME.en=Changed the sort condition of the item list of the supply
INFO.en=Change the sort condition when drawing the list of item list.\r\nVanilla was sorted by Item ID, but sorted in ascending order by the priority set in another table.\r\nIf the priorities are the same, sort by ItemID.\r\nIf the item IDs are the same, they will be sorted in order of durability.

In short, it is difficult to arrange them neatly in the editor, but if you want to arrange them neatly in the game, this can be achieved with a patch.

2 Likes

I half-updated the OP. Crossed off anything I mentioned, still have more work ahead.

re: game size, I’m guessing what Ryn meant by 1.77 GB was the entire size of the dev project folder. The dev folder for FE7x is comparable.
In terms of a build released to players, FE7x is currently around 80-100 MB depending on platform; 64MB of that is audio files, which is going to be the majority of game size for Tactile or LT, compared to GBA using sequenced music and audio.
The non-audio content and the game code combined are < 25MB.
I don’t have strong concerns over the difference between 32MB and 100MB, or even 200MB, on modern devices and internet connections, but it certainly could be an issue for some users.

1 Like

Some people don’t have home internet, so I would be wary of exceeding 200MB. I think it’s safe to assume DSL (384Kbps) speeds and that the average prospective player won’t want to exceed an hour in the library or whatever, so 200MB is about the limit.

Can LT or Tactile play MIDIs? It’d be super cool to be able to package a VirtualMIDISynth dependency or a MIDI player with .sf2 bundling to cut down on filesize heavily.

From what I’ve seen, a lot of people skipping out on these engines is from them being from a developing area and thus not having good internet. Only having to download a small UPS patch is a huge boon in such a case.

There’s also a large amount of players who only have mobile phones or otherwise would rather only play on their phones. Tactile is already expanding accessibility by having an (upcoming?) Android version, which is cool!

After reading this thread, I’m considering using LT until decomp is further along, but I also don’t want to learn Python. lol. it’s beginner friendly but the whitespace being used instead of terminators (brackets, semicolons, etc) makes my brain itchy.

Yeah I thought that 1.77gb size sounded bonkers. I’ll revise the numbers to what they were before.

You don’t actually need any Python knowledge to use LT.

Modifying source, maybe. But most things are usable directly from the GUI.

1 Like

Could someone send me a message, please? I’m starting to learn about this engine as much as I can and I don’t want to waste space talking about it here.

Which engine? Lex Talionis? SRPG Studio? You haven’t really specified one.

Lex Talionis.

You just start by reading the docs.

https://lt-maker.readthedocs.io/

You can also join the LT Discord and ask all the questions you want there! Lots of experts willing to teach you!

Also I forgot about this topic. Still need to update it.

2 Likes

Fun fact.
image
So that’s a thing now. Will update the OP for this at least… too busy for the other stuff still.

1 Like

Klokinator’s been banned, but has anything major changed about these various engines in the ~9 months since the post was last updated? Thank you all in advance!

1 Like

The basic points are fine. I use LT so am most familiar with that, but have used buildfiles and FRBuilder in the past. Would definitely recommend looking at LT. It has several new editors and almost all GBA/Repo spell animations have been ported over now. Very active development on its discord channel

1 Like

So Klok’s point about custom animations being a pain in LT and Tactile is moot now?
In any case, thanks for the reply! I’m very interested in checking out LT now, though I can’t help but notice how much more popular/ numerous romhacks/ buildfile edits are… :confused:

You can easily import combat animations already. Spell animations just need the script to be redone in LT format basically.

Rom hacking has been around for decades. It’s more widely known. If you want a system that lets you modify the original games, then it’s easiest to just, well, work off of the original ROMs. If you want to start making a new fangame from scratch, no way would I opt for ROM-based methods these days. There are too many limitations in palettes, coding new features, etc.

1 Like