rainlash

The Lion Throne (Fangame and Engine)

Recommended Posts

Thanks Rainlash. Theo cracked me up. Wow, I didn't know you were a one man band. No rush, you put out quality plus you've probably got plenty of other things keeping you busy. Anyway thanks for all your hard work. It's definitely one of my favorites. That sewer level was so fun to figure out.

Share this post


Link to post
Share on other sites

Wow, this looks very impressive! The fact that you're also making this open-source and the engine available for others to make their fangames with is worthy of commendation. I wish you the best in your efforts.

Share this post


Link to post
Share on other sites

Just played this hack the last few days and it was great, I loved the gameplay and even though the story wasn't the main focus it was definitely serviceable and the characters (especially the base conversations) were great as well. I didn't have too much trouble with the basic difficulty until the second to last map where I lost Theo and Joel, who I barely used.

I loved the skills and being able to pick between patching up bad stats or boosting good ones (or increasing movement which I did for most of my roster) helped with units getting stat screwed, however I struggled to find a use for some of the units. Theo kinda struggled to keep up in the mid game maps and fell behind the curve as a result, my Eliza got pretty strength screwed, but even if she turned out better I don't see what would have made her worth investing in (almost all of your units have good growth rates and she has very shaky bases). As well as Coyote being a bit on the weaker side. Althea and Drake were definitely my MVPs with honorable mentions to Nia, Kayla and Ophie, Tomes giving slight stat boosts, the AoE tomes and her overall stats just made Althea super valuable in almost every chapter, Drake was the typical solid cavalier/paladin that's always nice to have in FE, most of the other units definitely had their niches(Bows being really long range and accurate made them useful, Dark&Light magic had nice tools, I bet Joel has good potential but my fighters always turn out terribly for some reason, adding some res targetting damage with magic swords made Renae fun to use beyond the usual thief utility etc.).

Overall a really solid project, I'm looking forward to anything you come up with in the future.

Edited by Abundy

Share this post


Link to post
Share on other sites

The Level Editor Update!

Version 0.8 of The Lion Throne is out now. The OP has been updated with the download link. Also, you can download it here!

Level Editor and Tutorial

LevelEditor2.png

Yes, it's finally here folks. The fruit of nearly nine months of labor -- my baby, the Level Editor for the Lex Talionis Engine.

There is a tutorial which explains how to use the Level Editor here: https://github.com/rainlash/lex-talionis/wiki.

You will not need to know how to code AT ALL to use this tutorial, in fact we will never touch the codebase. Just follow the directions and you'll be well on your way in no time. The tutorial should guide you through everything you need to learn to get your first level set-up and running. I welcome questions, so feel free to PM me!

Some people have already started using it for their projects -- I know of two projects in the works myself, and with the Level Editor and Tutorial's official release, I hope to hear of more.

 

Writing and testing the Level Editor and Tutorial took up the bulk of my time these past months, but there have been a few more changes. 

Custom Combat Animations

Sentinel0_GenericBlue_Attack.gifHalberdier5_Eliza_Attack.gif

  • Critical animations for all default classes now available
  • Regular animations for Sentinel, Halberdier, Skirmisher, Bowsassin and Female Soldier added

Two New Difficulties

Difficulty.png

Lunatic Mode:

BossSnipe.gif?raw=true

Have you ever wanted to distinguish yourself from among the horde of casuals who dare to consider themselves Fire Emblem players? Have you ever wanted to lose -- a lot? Over and over and over again? Well have I got the mode for you!

Lunatic mode (like other Fire Emblem hard modes before it) drastically ups the difficulty. But your own characters bring better stats and new weapons to the fight as well. And trust me, you're going to need it. I only managed to beat it on Lunatic Casual, but I'm sure someone is hardcore enough to try besting Lunatic Classic.

Grandmaster Mode:

Grandmaster.png

Hate missing? Despise the RNG? Want to truly prove your LTC skills? Welcome to Grandmaster mode, where only the greatest tacticians will triumph. Instead of missing an attack, the attack will instead do damage modified by its hit chance. So a 50% 10 damage attack will always do 5 damage in this mode, instead of flipping a coin for 0 or 10 damage. Have fun taking your strategy to the limit.

Minor Changes:

  • Over 100 minor changes to the Lex Talionis Engine, generally to make creating your own custom levels easier.
Spoiler

Gameplay Balancing

  • Slight nerf to Halberdier promotion gains (Eliza has been buffed slightly to make up for this)
  • Halberdier loses access to Axes
  • General gains access to Axes
  • Chapter 6 has been made slightly easier
  • Sandblast 's number of uses lowered from 10 to 5
  • End-game adamant weapons have been buffed (-2 weight, +10 accuracy)
  • Casual mode now allows you to make a Battle Save at any time

A few caveats before you venture forth:

  • Bugs: As always, I am only one man and cannot find every bug in this behemoth of a codebase (and its only gotten bigger!). So if you encounter a bug, please send me a PM or comment here with the full error message. Also attach your Saves/debug.log.1 if you can, since it has useful information that will help me find the bug and squash it.
  • Saves: Since I made some changes to streamline the level creation process, the format of the save files changed once again. You will not be able to use your old version 0.7 save files in this version.  There's nothing groundbreaking in this update for the base game, so if you're still playing The Lion Throne's Hard mode, just keep going. You can upgrade to this version layer if you want to try out anything new.

What's Next?

I'm sorry to say, but this is my last content update for The Lion Throne. I've accomplished everything I set out to do with this project. I'll still be around handling any bug fixes, but there will be no more core gameplay updates.

But fret not -- I  will still be working on improving the Lex Talionis Engine. I hope that you will see another project by me in the future. I've been mulling over something spicy, and I hope to be able to present it to you all when it's ready.

Thanks to everyone who played it. I hope you enjoyed playing The Lion Throne as much as I enjoyed making it. And I hope others find the engine useful to them in their own pursuits.

Share this post


Link to post
Share on other sites

this occured when trying to look at a new character stats that i added

Main Crash 'charmap' codec can't encode character u'\u2019' in position 0: character maps to <undefined>
Traceback (most recent call last):
  File "main.py", line 117, in <module>
  File "main.py", line 45, in main
  File "main.py", line 63, in run
  File "Code\StateMachine.py", line 191, in update
    begin_output = self.state[-1].begin(gameStateObj, metaDataObj)
  File "Code\InfoMenu.py", line 33, in begin
    self.helpMenu = HelpGraph(self.states[self.currentState], self.unit, metaDataObj, gameStateObj)
  File "Code\InfoMenu.py", line 628, in __init__
    self.populate_equipment(metaDataObj)
  File "Code\InfoMenu.py", line 776, in populate_equipment
    self.populate_info_menu_default(metaDataObj)
  File "Code\InfoMenu.py", line 888, in populate_info_menu_default
    self.help_boxes["Unit Desc"] = Help_Box("Unit Desc", (24, 84 + GC.TILEHEIGHT//2), create_help_box(self.unit.desc))
  File "Code\InfoMenu.py", line 937, in create_help_box
    description_length = font.size(description)[0]
  File "Code\bmpfont.py", line 183, in size
    print("%s is not chartable"%(c))
  File "encodings\cp437.py", line 12, in encode
UnicodeEncodeError: 'charmap' codec can't encode character u'\u2019' in position 0: character maps to <undefined>
=== === === === === ===

not sure how to add debug log it wont let me

Share this post


Link to post
Share on other sites
51 minutes ago, FELORDZ said:

this occured when trying to look at a new character stats that i added

Main Crash 'charmap' codec can't encode character u'\u2019' in position 0: character maps to <undefined>
Traceback (most recent call last):
  File "main.py", line 117, in <module>
  File "main.py", line 45, in main
  File "main.py", line 63, in run
  File "Code\StateMachine.py", line 191, in update
    begin_output = self.state[-1].begin(gameStateObj, metaDataObj)
  File "Code\InfoMenu.py", line 33, in begin
    self.helpMenu = HelpGraph(self.states[self.currentState], self.unit, metaDataObj, gameStateObj)
  File "Code\InfoMenu.py", line 628, in __init__
    self.populate_equipment(metaDataObj)
  File "Code\InfoMenu.py", line 776, in populate_equipment
    self.populate_info_menu_default(metaDataObj)
  File "Code\InfoMenu.py", line 888, in populate_info_menu_default
    self.help_boxes["Unit Desc"] = Help_Box("Unit Desc", (24, 84 + GC.TILEHEIGHT//2), create_help_box(self.unit.desc))
  File "Code\InfoMenu.py", line 937, in create_help_box
    description_length = font.size(description)[0]
  File "Code\bmpfont.py", line 183, in size
    print("%s is not chartable"%(c))
  File "encodings\cp437.py", line 12, in encode
UnicodeEncodeError: 'charmap' codec can't encode character u'\u2019' in position 0: character maps to <undefined>
=== === === === === ===

not sure how to add debug log it wont let me

This should be enough to go by anyway. Thanks.

So what happened here is you included a UNICODE quotation mark (https://www.fileformat.info/info/unicode/char/2019/index.htm) in the unit description of the character you added. If you go to Sprites/Fonts,  you can see where I've defined the Info font (Info.idx). You can only use those regular ASCII characters unless you add your own. Maybe you can try replacing the unicode quotation mark with one from your keyboard -- or leave out the quotation marks altogether. I've never tried using Unicode characters within the engine, so sorry I'm not more help.

Share this post


Link to post
Share on other sites
2 hours ago, rainlash said:

This should be enough to go by anyway. Thanks.

So what happened here is you included a UNICODE quotation mark (https://www.fileformat.info/info/unicode/char/2019/index.htm) in the unit description of the character you added. If you go to Sprites/Fonts,  you can see where I've defined the Info font (Info.idx). You can only use those regular ASCII characters unless you add your own. Maybe you can try replacing the unicode quotation mark with one from your keyboard -- or leave out the quotation marks altogether. I've never tried using Unicode characters within the engine, so sorry I'm not more help.

That fixed the issue. Thanks!

Share this post


Link to post
Share on other sites

Level Editor bug

Anyone can walk through the thicket. Is there a way to quick fix the issue?

 

thicket bug.png

Share this post


Link to post
Share on other sites
15 hours ago, FELORDZ said:

Anyone can walk through the thicket. Is there a way to quick fix the issue?

Oh yeah. In The Lion Throne, unlike normal Fire Emblem GBA, I let anyone walk through the thicket -- it just uses up a lot of their movement points. You can quickly fix that by editing /Data/mcost.txt

There should be a row for each terrain type, and a column for each type of unit (Light Foot, Armor, Cavalry, etc.). Just change the numbers in the "Thicket" line to match your tastes. The "-" means that units of that type can't move through that terrain type.

Share this post


Link to post
Share on other sites

oh wow, A new update and i miss seeing it for a good month. Well then lets try lunatic mode then.

Share this post


Link to post
Share on other sites

Does this work on Android or Chrome OS. I only have a chromebook, and this looks pretty fun.

Share this post


Link to post
Share on other sites
On 10/12/2018 at 10:24 AM, rainlash said:

Oh yeah. In The Lion Throne, unlike normal Fire Emblem GBA, I let anyone walk through the thicket -- it just uses up a lot of their movement points. You can quickly fix that by editing /Data/mcost.txt

There should be a row for each terrain type, and a column for each type of unit (Light Foot, Armor, Cavalry, etc.). Just change the numbers in the "Thicket" line to match your tastes. The "-" means that units of that type can't move through that terrain type.

Awesome thx.

Also is there a method in properties to set win condition to defeat all enemies? or how to properly implement this with interact script?

another issue i dont know what this error is for starting up the .exe

Debug: 1
Version: v0.8.0
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
Traceback (most recent call last):
  File "main.py", line 29, in <module>
  File "c:\users\patrick\appdata\local\temp\pip-build-0o75dq\pyinstaller\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
  File "Code\GlobalConstants.py", line 92, in <module>
    PRELOADDATA = ET.parse(loc + 'Data/preload_levels.xml')
  File "<string>", line 62, in parse
  File "<string>", line 38, in parse
cElementTree.ParseError: not well-formed (invalid token): line 302, column 16
Failed to execute script main

Edited by FELORDZ
adding info for bug

Share this post


Link to post
Share on other sites
On 10/13/2018 at 10:07 AM, Alike said:

Does this work on Android or Chrome OS. I only have a chromebook, and this looks pretty fun.

Sorry but it doesn't currently run on either Android or Chrome OS. You can download the executable and run it on Windows, and it also runs on Mac and most Linux distros if you have Python and Pygame as described on the Github page. 

On 10/13/2018 at 5:30 PM, FELORDZ said:

Debug: 1
Version: v0.8.0
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
Traceback (most recent call last):
  File "main.py", line 29, in <module>
  File "c:\users\patrick\appdata\local\temp\pip-build-0o75dq\pyinstaller\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
  File "Code\GlobalConstants.py", line 92, in <module>
    PRELOADDATA = ET.parse(loc + 'Data/preload_levels.xml')
  File "<string>", line 62, in parse
  File "<string>", line 38, in parse
cElementTree.ParseError: not well-formed (invalid token): line 302, column 16
Failed to execute script main

So I can't diagnose the exact problem from what you've given me here. But I can tell you where to look. The likely problem is that you're missing a start or end bracket in your Data/preload_levels.xml file. I would look, as it says, around line 302. But the missing bracket could be anywhere and the error is just being propagated to the end. If you really can't find it, you can send me the text of your preload_level.xml file and I can take a look.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   1 member