bpic

Ra TBS Alpha release:

Ra TBS Alpha is a fully functional tactical battle system script and has what it needs to support developing basic tactical-battle-based games but it is missing many features that would give it the feel of a fully developed system, hence this is only an alpha, not a beta. The script is not completely finished yet.

The purpose of this release is for me to get a better sense of how many bugs there are in the script right now and to help me to get an idea of the direction I should head with the script. I don’t recommend using this version of the script in any serious projects you’re making, this is really just a checkpoint for me right now.Ā  This version of the script will not be supported once the full version is finished.

Some of the features included in the Alpha:

  • Turn based Tactical Battle System
  • No transitions to another map
  • Pathfinding
  • Normal Attacks + Skills
  • Specific Skill ranges (not just boxes or circles)
  • Area of effect skills
  • Jumping
  • Action Restrictions
  • Custom Win and Loss conditions
  • Team Colors
  • Producible Units
  • Unit costs
  • Individual unit items
  • Trading
  • Speed settings
  • Use Actors and/or Enemies as Units
  • Equip armor/weapons per unit if Actor
  • Gain Experience during battle
  • Terrain Passability Options
  • Equipment Range and Action Modifiers
  • Simple AI
  • Supports Large Maps with many units
  • + lots more

These are some of the features I want to add for the final version:

  • True AI
  • Capture Structures and Resource Locations
  • Gain funds based on resources owned
  • Allow units to interact with events and pickup items
  • traps to deal damage when a unit walks over them
  • Varying travel speeds over different terrain
  • Weather effects movement speed
  • Restrict skill usage by terrain tag used on/terrain tag targeted
  • Restrict skill usage/target by unit ‘type’
  • Units carrying other units (like a person unit getting into a plane unit)
  • Scenes after win/loss showing battle stats
  • Option to flip event self switches on state activation
  • Simple Fog Option
  • Additional teams
  • Overlay image after using a skill (multi-turn aoe skills)
  • Better Terrain passability settings
  • Easy script calls to change control of unit
  • Easy script calls to place a new unit on field after using a skill/item
  • Highly and easily customizable behavior on death (ex unit body stays and can be revived later)
  • Skills/items that push units around when used
  • Counter attacks, Unit guarding, directional blocking, Unit charging.

Current Problems and changes that need to be made:

  1. Need data organization class for displaying results/ exp
  2. Remodel turn control flow
  3. Ai needs to be worked on heavily and slightly remodeled lots of stupid behavior currently.
  4. Lots of other small features need to be implemented (end battle after x turns, extra party organization features, more intuitive unit placement and easier item organization, etc.)

Current Known Bugs:
Text is cut off in a few windows

Sometimes the game will get stuck on the ai’s turn. I believe this happens when an enemy unit is destroyed during the ai’s turn. The script is waiting for that enemy to finish moving but it never does of course and so the player never gets another turn.

Other non-bugs:
There are lots of problems with ai, these are not really bugs, they’re just examples of poor behavior. The ai will be completely reworked with new logic
for the final version of the script.

  • Jumps aren’t counted properly, so ai units can sometimes move more times than they should be able to
  • Ai won’t pick the optimal tile to hit when using aoe skills
  • Ai will try to target its unit even if it was removed from the map
  • Several units may try to move to the same square and won’t pick a new location to move to even if there are plenty available, instead they will just “line-up”, all of them trying to move to the one square.
  • The ai won’t attack its target if it is within range but the ai unit couldn’t find a path to get to the location it wanted to go to.

Please make suggestions for what you want to see in the script and any other ideas or problems you have.

Demo:Ā v1.5 (Updated 4June2013)

Compatibility Addons (Alpha – paste these under the tbs classes and modules):Ā YF Random Skill Invoke Compatibility- v0.1 (Updated 14April2013)

– Talk to the man right in front of you with the straw hat to get started. You can produce units just south of the player’s location at the white circle.

81 responses »

  1. Hytporsche69's avatar Hytporsche69 says:

    You are sir, ARE AMAZING!!! šŸ™‚ Will post back if I have any problems or bugs.

  2. Megan's avatar Megan says:

    This script is very cool but you didn’t say how to set up differnet victory conditions in the read me. How do you set up different victory conditions?

    • blucalm's avatar blucalm says:

      This requires a small amount of scripting knowledge, so if you aren’t familiar with scripting this part may be a bit difficult to set up.

      In the TactBattleManager module there is a method called custom_win. This method should return a boolean value. The method is constantly called while the tactical battle is running, once that method returns true the battle will end.

      You can test this out by just writing “true” inside the method. You’ll see that the tactical battle ends immediately after it starts.

      So for example if you wanted the battle to end once a
      unit on the player’s team reached a certain location on the map you’d have to tell the method to search through the @units hash and check the coordinates of all of the events in @units[PLAYER][:event]…

      I’ll write up a small guide in the documentation for this part.

  3. Nathan's avatar Nathan says:

    Your system is amazing! You should be proud of it, really!
    I see a great future for this battle system. I love TBSs, and I’d love to see such a system on Ace.
    I tested your battles and I have only a few things to say:

    – I didn’t manage to see a limit to how the enemy Ai produces units. And have just a little amount of gold, so I could just make a single unit, and the enemy just produced a unit per turn. That seems unbalanced.

    – Still about unit producting, the units a player can produce should be limited and/or conditionated by by level/variable/switch. It’s that I can’t produce Achers when battling troop 1, but I can when battling troop 2. Also, if you could implement a way of calling your reserve members at the producing point, it would be great.

    -You should really size up these windows! I mean, you still do have a lot of space on Ace’s screens to use such small windows. You should resize some of them ASAP, including the items and the status screens.

    – Couldn’t you make a way to confirm the place where you move? Many times I move 3 tiles with a character when I actually should have moved 2 (to use a range skill), and I can’t turn back.

    Well, I think that’s it. Good luck with your system!

    • blucalm's avatar blucalm says:

      These are all great suggestions some of them I had noted would be added already but you can be sure all of these will be implemented in some form or another in the next release.

  4. Ark's avatar Ark says:

    Just to talk about one bug that I found. There is the option to save during the battle, to resume it later. The problem is that you can resume, but when you atack some enemy unit, the game crashes. In the debug window it’s what appears: http://img171.imageshack.us/img171/4245/semttuloqeo.png

    Well, my english may be a little bad… And I’m not programmer. I just want to help.

    • blucalm's avatar blucalm says:

      Alright thanks for the report call stack and all I should be able to fix this.

    • blucalm's avatar blucalm says:

      Link for the demo has been updated, I think the problem is fixed now.

      • Ark's avatar Ark says:

        Yeah! That worked! =)

        And there is a “funny” fact… maybe linked with the save I made before, because it not occours when I create a new game and do the very same thing, and then save again this game, and then do the same thing again.

        The problem is with an especific spell, Leya’s “Force Life”. When I use it, occours a crash in the game related to the AI script. I managed to take a picture from the debug window. But the error is diferent depending on the way I use the power. From far, the error is in the line 540.

        From near, is the line 345.

        http://imageshack.us/photo/my-images/703/sadsep.png/

        I don’t think it’s a real important bug, but I’m reporting it anyway.
        I loved you TBS, I’m really very impressed.

      • blucalm's avatar blucalm says:

        Yes this seems to happen for me too. After updating the script my old save files will generate strange bugs.

        If you can’t get it to happen after starting a new game I wouldn’t worry about it.

  5. Megan's avatar Megan says:

    Thank you for catching that bug! I had no clue about it. (:

  6. rayhaku808's avatar rayhaku808 says:

    Omg once you implement a bunch of features you’ve mentioned I’d be able to make a partial RoTK game finally!…

  7. Ark's avatar Ark says:

    I should say. Yours is the better TBS ever made in rm.

  8. Eis's avatar Eis says:

    Hi i got to say i love this Script u made ive been playing around the units and maps for my rpg only problem i have is that i add the unit Class in (TBUnit) Script but it wont do any actions in battle please help.

    • blucalm's avatar blucalm says:

      Try adding a new unit to the demo first to see if you can get the to work.

      Be sure you copied and pasted everything over to your clean project.

      If you still can’t get it to work, try modifying the demo to create your project instead of starting from a new one.

  9. Rein's avatar Rein says:

    Excuse me, could you possibly repost because my computer says that there is a Virus.

  10. […] Auteur : blucalm Langue : anglais CatĆ©gorie : Tactical battle system (TBS) DĆ©mo : oui Site : lien […]

  11. jejelite's avatar jejelite says:

    Hi!First of all sorry for my bad english.I hurt a problem with my project i use Kai Monkey’s Character Creation to create a custom character(name,face and charset).At the start of a battle the script cant find the main character because the name is define at the start of the game not in the editor.How can i make this work?

  12. jejelite's avatar jejelite says:

    That happen when i put the actor 1 on the tactical map your script work(the name of database will be not change depend on the name in-game).here the error i got:

    Script ‘Reproduce Events’ line 76: NoMethodError occured.
    undifiened method `id’ for nil:Nilclass

    • blucalm's avatar blucalm says:

      Make sure you have an event with the same name as actor 1 (the name of actor 1 in the database) on the map you’re loading the events from.

  13. dtccnz's avatar dtccnz says:

    This script is simply epic! I was waiting for gtbs to be translated to rmva but after using your script i found it totally unnecessary. great work!

    Now I just have a few questions about this battle system:
    1. when I use a skill to attack an enemy, when the area of effect include both a friendly unit and an enemy, it damage both of them (if the area include the user of the skill, it even damage the user). Is there a way to turn off friendly fire or set the damage caused by friendly fire to a certain percentage(e.g. 50%)? It would be great if you could add a new note-tag to the skills (e,g: ) that allow us to customize it. If this function is available, it will allow us to create a lot of very interesting skill effects(e.g. if the percentage is set to a negative number, it could damage the enemy and restore the friendly units at the same time; or if it is set to higher than 100%, it will cause more difficulty to players when they try to pick the optimal tile to hit)

    2. In the current version, the script allows Weapons/Armors to modify the range and actions for each unit. This is a very good design. However, I was wondering if you could consider expanding this function and allow states to do the same thing? (e.g. a state that can ban an unit from moving;or a state that enables an unit to attack twice)

    3. In the current version, we set up the ‘Unit Actions’ under the Actors tag in the database for teammates. However, I was wondering if you could allow us to customize these settings under the class tag in the future? That would allow us to setup more characteristics for different classes.

    4. I was trying to create an event on a map that allows players to fight for multiple times. However, every-time when the enemy represented by the event was killed during the battle, the event disappear from the map after the battle ends. Is there a way I can stop it from disappearing after the battle ends?

    Sorry for my bad English, I am really looking forward for your reply! Thanks again for your great TBS!

    • blucalm's avatar blucalm says:

      Thank you šŸ™‚

      To respond to all of your questions:

      1: I didn’t add support for this in alpha but am planning on doing so for next release. Hadn’t considered the extra percentage options either, great idea šŸ™‚

      2. Yes this will more than likely be in the next release. It was supposed to be in the alpha.

      3. I hadn’t considered this, good idea, I’ll add this.

      4. I had planned on adding this, yes. Didn’t include the feature simply to get the alpha out quicker. For some reason when I was writing the script it made things easier if events that were dead were no longer on the map.

      • dtccnz's avatar dtccnz says:

        Thank you for your reply! That sounds awesome!

        I also got a theory about the unit’s animation which might be useful to the battle system. In the current version, the system only displays the walking/moving animation for each unit during the battle. No matter the unit is waiting or attacking, the animation won’t change. So I couldn’t help thinking: is there a way we can allow each unit to have multiple animations for different actions during the battle? My theory is: as we can select the battle animation for each unit in map002, if we select the waiting animation in the default event page for an unit, then add a new event page, select the moving animation and set the condition to “when switch [001:unit_moving] is on”, then do the same for the attacking animation, then we can use game switches to control the display of unit animations during the battle. After doing this, the only thing left is to set the switch [001:unit_moving] to [on] when the system start moving an unit during the battle then set it back to [off] after the unit reached its destination(also do the same for attack). Hope this could help!

      • blucalm's avatar blucalm says:

        Yeah that’d be pretty straight forward to implement.

    • Pikalyze's avatar Pikalyze says:

      Gtbs is being designed, lol. In fact, it’s at Beta 1 currently.

  14. Pikalyze's avatar Pikalyze says:

    One day, when this is finished. I’ll make a armies of gielinor similarity. (Search it up if you want :P). Yay :3.

  15. dtccnz's avatar dtccnz says:

    Hi again! I am currently working on my new project based on Ra TBS. I just love this battle system so much! Just got a quick question here:

    I was trying to use Yanfly ‘Random Skill Invoke’ script with Ra TBS, However, it seems like both script has used alias for ‘use_item’ thus I can’t get ‘Random Skill Invoke’ to work. Just wondering is there any chance to make this script compatible with Ra TBS in your next release? Here is the link for Yanfly ‘Random Skill Invoke’ script in case you don’t know what I am talking about:

    Random Skill Invoke

  16. Victor's avatar Victor says:

    Hey, I was wondering if you could configure a way where I could send a unit to an enemy and if the enemy is recruit-able, I can select “talk” and it would only be available when you are near them. If so, thanks šŸ™‚

    • blucalm's avatar blucalm says:

      Yes, this is a good idea, I’ve added it to the list of features I need to implement for the next release.

      • Victor's avatar Victor says:

        Also, I dunno if this is supposed to be, but when I open the menu, I don’t just hear the default cursor sound when moving the cursor, but various other sounds.

      • blucalm's avatar blucalm says:

        I updated the demo, it was another random script I had written, wasn’t supposed to be there.

  17. meowth's avatar meowth says:

    oh hi. i was wondering if i could make a skill you could use on yourself?

    • blucalm's avatar blucalm says:

      Check out sections 2.2.2 and sections 10.1 of the ‘readme’ file. I explain how to allow a unit to target itself there.

      By default you would use the ‘v’ symbol on the keyboard when specifying a pattern.

  18. Nooblax2.0's avatar Nooblax2.0 says:

    I posted something in the request page earlier but after playing around with the demo I realized I know nothing about scripting. Any good tutorials or a walk through to help noobs learn scripting? Specifically scripting with RA TBS? Sorry for my lack of knowledge, I tried some research but nothing solid yet.

  19. Nooblax2.0's avatar Nooblax2.0 says:

    Yes of course 😦 … How foolish of me. At any rate I have started a massive campaign to learn scripting and ruby and the like, I have some 400 pages to read through and test so after that I’ll get back to your readme file. Going to start back at the basics and work my way up ^^ Thanks for your reply šŸ™‚

  20. GreatStoryBroski's avatar GreatStoryBroski says:

    I felt a need to comment on this and thank you for this. I’ve been stuck in development for a few months now due to a lack of combat system. Now I might actually be able to get things moving again.

  21. Caedmon's avatar Caedmon says:

    I had started a Shining Force remake about a year ago but stopped after not hearing any news on an srpg system. I may pick that up again with this script now. If I do I will be in contact with you on specifics. Thanks for doing this there are a lot of people out there looking for srpg games!

  22. Pixel Brady's avatar Pixel Brady says:

    Really cool script there. Even as an Alpha/Demo, it works dead nice. Feels a bit confusing at first, but learning curves aren’t a major problem. Keep it up, would be awesome to see a version you feel is more complete!

  23. thecrusticroc's avatar thecrusticroc says:

    This is really great, but you have to fix the camera movement outside the tbs (Camera follows every moving event…)

    • blucalm's avatar blucalm says:

      Wow I really apologize that’s just embarrassing, was a complete oversight by me. It’s fixed now.

      There was a very small unrelated bug in one of the dependencies which has been fixed as well.

  24. Zedicius's avatar Zedicius says:

    Heya, Is there a way to stop an enemy production event from producing units? Also, would it be possible to have an enemy unit that suppons, or spawns other units?

  25. Pikalyze's avatar Pikalyze says:

    Seriously will be perfect for my next game when I start it. I have a idea:What about if you can set enemies to attack certain targets(Say, like the hero) or try and capture certain buildings(When it’s ready)/reach certain points?

  26. Name (required)'s avatar Name (required) says:

    When do you think the next version will come out?

  27. Gremlin Grenade's avatar Gremlin Grenade says:

    Hi!
    I have to commend you on this script! I’ve been able to use it in a large project (a team of about 12 are working on this game) and it’s been incredibly helpful. However, although I understand you have these forums set up to answer any questions and help folks using it, I was wondering if I could contact you personally for a slightly different kind of request.

    If that’s alright you can reach me at gremlingrenade@gmail.com, or on skype (also as gremlingrenade).

    Thanks for your time!

  28. Hey I have run into a problem. Sorry for the derpy question but when I start a tactical
    battle the game crashes and says:

    Script ‘Reproduce Events’ line 77: NoMethodError Occured

    Error occured, check the debug console for more information.

    What does this mean and what do I have to do?

  29. water2112's avatar water2112 says:

    Can you make your allies computer controlled?

  30. JART's avatar JART says:

    Is there any way to set an event that will increase ur gold every turn?
    I mean u can almost make an Advance Wars game with this system.

    • JART's avatar JART says:

      Also,is it possible to choose fixed starting positions?
      like i wanted to say that there are 8 starting cells that are 15,22,17,22, etc…

  31. chaoss17's avatar chaos17 says:

    Hi,

    I tried to use this : @spriteset.add_highlight_tb(5,5)
    But I got this error : http://puu.sh/6HfB3.png
    Did I missed something ?

  32. Tyler's avatar Tyler says:

    Sounds awesome. However, I can find no way to actually see/download the script. Am I missing something? Is there a link still up?

  33. DarkElbony's avatar DarkElbony says:

    Can this script used for 1 vs 1 mode?

  34. Ark's avatar Ark says:

    When will you launch the final version?

  35. Naraphel's avatar Naraphel says:

    Just wanted to know if you were still on this script or not because I’m searching for a TBS and the Gubid’one is good but hard to configure. Yours seems good to but on the website it is said that you only propose an alpha version.

  36. You are awesome! your scripts are amazing!
    is there any way to make a variable increases by defeating an specific unit?

Leave a comment