Jump to content


  • Content Count

  • Joined

  • Last visited


Profile Information

  • Gender
  • Location
    Out wandering with gods

Previous Fields

  • Favorite Fire Emblem Game
    Blazing Sword

Member Badge

  • Members

Recent Profile Visitors

1,409 profile views
  1. New build of the Engine is up. v0.9.3.11 Fixed. Thanks for the error log. Okay I figured this one out too... It's a really insignificant bug on my end, but it basically meant you couldn't have tier 3 or greater generic units. The code would enter an infinite loop on trying to process any tier 3 or greater generic units. This has been fixed in v0.9.3.11. Thanks for the bug report. This has been fixed. There may be a couple of additional bugs like this lurking about. I made the Tile Objects check their position at instantiation because I want to catch all weird bugs where a tile object does not have a position. This is what caught a different unrelated replace tile bug. This is likely an issue with your death_quote_info.txt script. There's an "if statement" you wrote somewhere in the script that the Engine is incapable of parsing. You can give me the debug.log.1 that has the issue + the death quote info script and I can take a closer look if that's not enough information for you to solve the issue.
  2. I've not been able to find this bug -- I tried multiple merges of one item, and multiple merges of different items, both in the same session, and nothing broke on my end. If you can find a specific way to recreate the bug, please forward it to me -- or the error message, so I at least have an idea of where to start. These are now fixed in the latest update to the Engine (v0.9.3.10). The activated versions of Sol and Luna are the default, but the proc version are also still around in the status.xml if you wanted to use them instead as a basis. As far as I can tell, this should only happen when "cheat=1" is set in the config.ini file. If so, this is a feature, not a bug -- so it's easier to test with. Switch it to "cheat=0" in the main "Data/config.ini" when you ship the game. I have no idea where to start on this one either -- if there is no error message, then this will be very hard to debug. If you can send me the minimum data necessary to repeat the bug, I can take a look. It only happens with the one class type? If so, I would check the images associated with the class type -- maybe one of them is missing or buggy? But I really don't know... I'm glad you figured it out. The call item script is very elite tech for the Engine, and most of the things you could do with it would cause the game to crash unceremoniously, so I don't recommend using it if possible. However, the exp potion idea is a good case for using it. Try setting up an item like so: <item name="Exp Drink"> <id>Exp Drink</id> <spritetype>Consumable</spritetype> <spriteid>8</spriteid> <components>usable,uses,map_hit_color,call_item_script,booster</components> <uses>2</uses> <RNG>0</RNG> <value>300</value> <desc>A draught that gives 50 exp.</desc> <map_hit_color>96,144,232</map_hit_color> </item> The item must have the call_item_component component, booster component, and usable component to work. Then, create a file called "Data/callItemScript.txt" in your Data directory. # A sample call item script if;self.unit2.id == "Exp Drink" give_exp;{unit};50 end The first unit is the unit you are using the item on, and the unit2 is the item itself. This script is shared by all items that have the call_item_script component, so if you have more than one you must check the item id to determine what to do -- just like I did. Edit: Also, this will only work in the newest update to the Engine since I fixed a bug associated with the call item script component. There's a new build (v0.9.3.10) out new that fixes these bugs described above, along with a terrain_layer bug that someone else reported to me directly. Happy new year!
  3. Thanks for the bug report! I never would have found this without the report! Saving the turnwheel's action log is very complicated, and it was trying to save the convoy as a unit when this occurred. There's a new upload of the Engine (v0.9.3.9) at the usual place which has this fixed, along with a couple of other small trade menu related issues. I also added a title screen particle flag to the constants.ini file. You can add the line title_particles=None to turn off the particles on the title screen, or set it to one of ["Smoke", "Fire", "Dark"] (the three weather systems that actually work on the title screen). For instance: title_particles=Fire to get Fire. "Smoke" is the default. "Dark" is kind of boring. "Fire" looks pretty neat though.
  4. Try using the "gold" command instead. Because I added support for different parties in the Engine, there is no longer one single money constant. Now you use the "gold" command, which can be done like this: gold;1000 to give 1000 gold to the current party, or like this: gold;2000;Greil_Mercenaries to give 2000 gold to a specific party. I will have to update the wiki with this change. I'll also see about adding a no banner version, since there currently isn't one.
  5. I'm assuming that you are running the base Python version of the Engine, not the Windows executable. It's not mentioned in the tutorial (which is my oversight -- sorry about that), but you will need to have PyQt5 (a GUI framework) installed to run the LevelEditor.py as a Python script. I don't know your method of installation of Python, so I can't necessarily recommend any specific way of installing PyQt5. I use Anaconda, so for me PyQt5 comes pre-installed, which is why it is my oversight.
  6. Yes. The game can determine the number of levels at runtime now automatically. Lines 80 - 150 of the Code/configuration.py file contains a list of every constant currently accepted in the constants.ini by the Engine. Not yet. It's on the to do list. I'll probably add the flag as an option in the constants.ini file but its not high priority since there is a solution, even if the solution is kind of jank. I also forgot to mention that the trading menu had a usability upgrade thanks to djnemec of Gitlab. He upgraded the code so now the trading menu should behave more like the GBA games.
  7. A new version of the Engine has been posted that fixes some bugs I've received reports about. The current version of the Engine is now v0.9.3.8. Thanks for your patience! These bugs should now be fixed. Thanks for the bug report! No temporary fix, just a weird corner case that popped up from the Python 2 -> 3 transition that I didn't nail down. It's the "Resist Status" status that is causing the problem. The next version of the Engine should have it fixed, along with the weird Howl/Gleipnir animation effect. Also these.
  8. So there's an easy but somewhat hacky way right now. In the future I'll add a flag to turn off the particles, but for now: Navigate to Sprites/General/Weather/SmokeParticles.png and open it in GIMP or Photoshop. You can't use Paint for this because Paint won't preserve the transparency of the image. Then, just make the whole image completely transparent. Save and overwrite the image. Now, even though the particle effect is still on, you won't see any particles in the title screen.
  9. Sure is! Here's an example: <item name="Phase Scroll"> <id>Phase_Scroll</id> <spritetype>Consumable</spritetype> <spriteid>0</spriteid> <components>usable,uses,beneficial,status</components> <uses>1</uses> <RNG>0</RNG> <value>2000</value> <desc>Grants Shimmer skill permanently.</desc> <status>Shimmer</status> </item> You could make the Shimmer skill have a time limit to only give Shimmer temporarily to the unit that uses the item. Thanks for the bug report! No temporary fix, just a weird corner case that popped up from the Python 2 -> 3 transition that I didn't nail down. It's the "Resist Status" status that is causing the problem. The next version of the Engine should have it fixed, along with the weird Howl/Gleipnir animation effect.
  10. What version of the Engine are you using? There was a bug with the Engine where removing properties from a tile could crash the Engine a while back, and it looks like you have a different version than current -- since your line 839 of Dialogue.py does not look like mine. If your version is not, I'd recommend upgrading.
  11. Thanks for the bug report! I've got a new build of the Engine up and running (v0.9.3.7). It fixes this bug you've run into here, and it should also fix your arrow key input bug! Thanks for telling me about the fact that it occurs when you start the turn. That gave me enough info to fix the bug (I think, hopefully!). If you were pressing an arrow key while the turn changed, it was possible that the input would skip and cause this bug. Now it should be fixed. If you've never transferred to a new build of the Engine, it should be really easy. Just download the new Engine build from the same place you downloaded the old one. Then you can take your ENTIRE Saves folder from the old place you had it and move it entirely into the new Engine. Then you can run the new Engine and everything should work. I don't think you'll need to restart the sewer level (Chapter 9).
  12. Tiled. https://www.mapeditor.org/ Make sure they are PNG format, preferably without any transparency. And their length and width must be perfectly divisible by 16 pixels. Yes to the Sacred Stones style. Try this: <status name="Summon"> <id>Summon</id> <image_index>9,0</image_index> <desc>Activated. Summons a dark phantom to aid you.</desc> <components>activated_item,class_skill</components> <activated_item>so_Summon_1</activated_item> <charge_method>MAG</charge_method> <charge_max>60</charge_max> <check_valid_func>bool(self.get_choices(unit, gameStateObj)) and not any(unit.name == 'Phantom' for unit in gameStateObj.allunits if unit.position)</check_valid_func> <get_choices_func>[pos for pos in unit.getAdjacentPositions(gameStateObj) if not gameStateObj.grid_manager.get_unit_node(pos)]</get_choices_func> </status> Notice the changed "check_valid_func" compared to the default summon skill. I just make sure there are no units named "Phantom" on the field before the "check_valid_func" would return True. You could set the "charge_max" to 0 to make it available whenever. I don't think you can summon multiple entities in Engine right now -- and if you could it would be really complicated, probably involving the "call_item_script" component. I can add that to my list of things to make easier though.
  13. I'm sorry that's happening to you. It seems you found at least a jury-rigged solution of your own. I've tried to find the possible cause for this bug, but I've looked through my entire input code and cannot find what could be going wrong... I sped the cursor all the way up and moved around a lot on my own keyboard and nothing like it happened either. But others seem to have this problem too? When you go to the options menu while this is happening (the one with the "Suspend" option), does it skip all the way around the options menu, like from top to bottom, or does it stop on the "Unit" option? This will tell me the type of input error it is. Does minimizing the screen do anything? Does going to a different program (like the internet), and then going back do anything? I know since the errors sort of random this may be a hard question to answer, but is there anything in particular you can remember doing when this happens that could shed some light? Since it doesn't seem to happen all the time, just sometimes?
  14. Not currently possible through a skill/status unfortunately. Well the Engine doesn't. The player chooses the feat on level up. Simply put, if at any time the player is not available to choose what feat should actually be chosen, instead no skill is learned at all. This generally only happens when a unit is loaded into the game at high enough level that they would have gained a feat by level up. Instead they don't gain ANY feat at all. This is why I needed to have Kayla and Coyote have a personal skill -- since they are given to the player at level 8 or above, they would have gotten a feat. Instead, I chose the feat for them and made it their personal skill, since the Engine skips their normal feat at level 8 given by their class.
  15. It's mislabeled in the Data/constants.ini file. Here's the real answer: https://gitlab.com/rainlash/lex-talionis/wikis/8.-Modifying-Game-Constants#constant-descriptions What do you mean by this? I have the feeling the answer is no, but if there's something specific you're looking to do, maybe I can help. Feats are not learned at random. If a player character would level up and gain a feat, they choose from the list of available feats (any status with a "feat" component). If an enemy would level up and gain a feat, instead they just don't gain a feat. I had enemies gain random feats at one time, but it made the levels too variable and just added unnecessary complexity. If you really wanted that feature, it would be trivial to switch it back in the code. You could change line 460 of Data/SaveLoad.py from "if feat:" to "if True:" to have the "Feat" status give out a random feat when the player could not choose. Obviously this would only work with the Git version of the Engine, not the compiled executable version. You can have more than one personal skill, but they cannot be made learnable via level up right now. The syntax in the Data/units.xml is just (skill_id),(skill_id),(skill_id). No level tags are available. That's a good idea though so I'll add that to the ToDo List. The <skills> element in the units.xml ought to work the way you describe, I just hadn't had to use it that way before.
  • Create New...