TileEngine and UnitEngine: v1.0 released!

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Message
Author
chronoluminaire
Eileen-Class Veteran
Posts: 1153
Joined: Mon Jul 07, 2003 4:57 pm
Completed: Elven Relations, Cloud Fairy, When I Rule The World
Tumblr: alextfish
Skype: alextfish
Location: Cambridge, UK
Contact:

TileEngine and UnitEngine: v1.0 released!

#1 Post by chronoluminaire »

The TileEngine and UnitEngine are released! These Ren'Py objects let you assemble isometric or square-grid maps out of tiles, display sprites or units on top of them, move those units around (finding routes around walls and optimised across different types of terrain), and provide a framework for you to define actions they can take like shooting at each other.

You can download version 1.0 of the TileEngine and UnitEngine here:
* Archive including demos and sample tiles (recommended): download for Windows , Linux, or Mac, or download the Ren'Py 6.6.1 game directory. (Note that the performance will be very bad in versions earlier than Ren'Py 6.6.1.)
* Bare files: tileengine.rpy, unitengine.rpy

Tutorials and full reference documentation are available on the Ren'Py wiki:
* Tile Engine Tutorial
* Unit Engine Tutorial
* Tile Engine Documentation
* Unit Engine Documentation

I'm happy to answer any questions anyone might have about the engines here. Enjoy!
Attachments
The demos title screen
The demos title screen
Last edited by chronoluminaire on Wed Mar 12, 2008 7:30 am, edited 3 times in total.
I released 3 VNs, many moons ago: Elven Relations (IntRenAiMo 2007), When I Rule The World (NaNoRenO 2005), and Cloud Fairy (the Cute Light & Fluffy Project, 2009).
More recently I designed the board game Steam Works (published in 2015), available from a local gaming store near you!

bloodywyvern
Veteran
Posts: 338
Joined: Wed Dec 26, 2007 5:26 am
Location: US
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#2 Post by bloodywyvern »

I won't have any questions until I get a chance to actually try it out, which won't be for awhile. Just wanted to congratulate you on a hard work done! I have an old friend who's a damn good pixel artist, so I may try to coerce her in to helping put something together. If I can manage that then who knows, I may be able to put another idea on my shelve in to action (though I have too many to begin with). I'll look forward to putting it through it's due process once I figure it out...if ever O.o

Congrads!
Project - R.E.M: Reality's Dream - Team head/Lead Writer
Other projects - Jamais Vu (script 10k), Chronicles of Etemis
Scripts in planning- 1

User avatar
Vatina
Miko-Class Veteran
Posts: 862
Joined: Mon May 08, 2006 2:49 am
Completed: Blue Rose, AO: Broken Memories, My Eternal Rival, Dust
Projects: AO: Fallen Star
Organization: White Cat
IRC Nick: Vatina
Tumblr: vatinyan
Deviantart: Vatina
itch: whitecat
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#3 Post by Vatina »

That looks very interesting! It's something I had hoped to see ^^ I'll take a look at it one of these days and see what it can do.

(Sorry for the useless post, just wanted to let you know I'm excited about this :) )

Ivlivs
Veteran
Posts: 267
Joined: Sun Feb 25, 2007 1:00 pm
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#4 Post by Ivlivs »

Thanks a lot, chronoluminaire!

I look forward to actually using this to make a game. I have nothing on the table at the moment, but now, I think that this is a step in the right direction.
Jitteh Dawn --- A VN by Ivlivs

Hentai Senshi
Regular
Posts: 105
Joined: Wed Aug 08, 2007 9:37 pm
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#5 Post by Hentai Senshi »

Using the demo, I get

"AssertionError: UnitEngine() must be called with a movement_style equal to UnitEngine.MP or UnitEngine.AP !"
trying to run the UnitEngine village demo, and the TileEngine village demo does not seem to respond to me clicking on buildings. However, it's a lot more usable than the last time I looked - when I'm more awake I'll poke at it to see if it'll meet my desires for the Civlike Thing.
Project statii:
Yuri no Yume: Wet Night: Released!
Tentacularity: Released!
LoliFindsKitten: AlphaBetaThingy...

Kikered
Regular
Posts: 128
Joined: Sat Feb 26, 2005 3:02 pm
Completed: Quine, The Secret Ingredient
Projects: Metropolitan Blues, Mirai Imouto, Temple Glen, Fuyu no Tabi, MIA
Organization: Team BG
Location: The Midwest
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#6 Post by Kikered »

Congrats on releasing it! ^^
Verbosity leads to unclear, inarticulate things.

Hentai Senshi
Regular
Posts: 105
Joined: Wed Aug 08, 2007 9:37 pm
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#7 Post by Hentai Senshi »

And playing the combat demo in square mode, I got:

Code: Select all


NameError: global name 'fmxo' is not defined

While running game code:
 - script call at line 88 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/demos.rpy
 - script at line 48 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/combatdemos.rpy
 - python at line 117 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/combatdemos.rpy.
 - python at line 268 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/unitengine.rpy.
 - python at line 293 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/unitengine.rpy.
 - python at line 302 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/unitengine.rpy.
 - python at line 318 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/unitengine.rpy.
while trying to flee to the lower right after Tohko was shot by Daleks.
Project statii:
Yuri no Yume: Wet Night: Released!
Tentacularity: Released!
LoliFindsKitten: AlphaBetaThingy...

bloodywyvern
Veteran
Posts: 338
Joined: Wed Dec 26, 2007 5:26 am
Location: US
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#8 Post by bloodywyvern »

I was trying out the demo and I realized two things, whether it's unique to me or not I have no idea...

1.) It would not let me use the mouse to move which tile was selected. I could use the arrow keys just fine, it just did not like my mouse. Would it have anything to do with having one of the laptop touch ones? Probably not.

2.) When I placed the folder in the Ren'Py folder it brought it up automatically, instead of letting me pick which project, etc. Should it do that? I kind of wanted to keep Ren'Py related things organized...so I had hoped it would let me select it through the main menu. Guess not >.>

Anyway, it seems from the demos you did a good job! I don't think I'll get a chance to play with it anytime soon, learning the programming for it would be way above me right now (I'll concentrate on doing regular Ren'Py first ^^;)
Project - R.E.M: Reality's Dream - Team head/Lead Writer
Other projects - Jamais Vu (script 10k), Chronicles of Etemis
Scripts in planning- 1

chronoluminaire
Eileen-Class Veteran
Posts: 1153
Joined: Mon Jul 07, 2003 4:57 pm
Completed: Elven Relations, Cloud Fairy, When I Rule The World
Tumblr: alextfish
Skype: alextfish
Location: Cambridge, UK
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#9 Post by chronoluminaire »

Hmm. I'm sorry, Hentai Senshi, but I don't see either of those errors. Which version were you using - the bare game directory, or one of the installs? The game directory will only work with Ren'Py 6.6. And also, what's your OS? I've searched the whole game directory and not found any reference to "fmxo". It'd be helpful if you could post the full traceback for the second error.

Oh - one possibility is that you don't have the performance-fixed display directory from Py'Tom. Sorry, I forgot to post the link to those. I've edited that link into the first post.
bloodywyvern wrote:I was trying out the demo and I realized two things, whether it's unique to me or not I have no idea...

1.) It would not let me use the mouse to move which tile was selected. I could use the arrow keys just fine, it just did not like my mouse. Would it have anything to do with having one of the laptop touch ones? Probably not.
Yeah, that's just not something that's supported. You can still use the mouse to do everything: all that moving the cursor does is scroll the map (which you can do with mouse with the scrollbars), and simulate clicking on a unit (which you can do with mouse by just clicking on it.)
bloodywyvern wrote:2.) When I placed the folder in the Ren'Py folder it brought it up automatically, instead of letting me pick which project, etc. Should it do that? I kind of wanted to keep Ren'Py related things organized...so I had hoped it would let me select it through the main menu. Guess not >.>
You can do this. This isn't my behaviour, just the behaviour of the Ren'Py launcher. If you put the "game" directory directly in the same place as renpy.exe, then it'll start that one project automatically. But if you create a subdirectory (called something like EngineDemos) and put the game directory in that, then clicking renpy.exe will bring up the launcher, and you'll be able to select EngineDemos as the project to launch.
I released 3 VNs, many moons ago: Elven Relations (IntRenAiMo 2007), When I Rule The World (NaNoRenO 2005), and Cloud Fairy (the Cute Light & Fluffy Project, 2009).
More recently I designed the board game Steam Works (published in 2015), available from a local gaming store near you!

bloodywyvern
Veteran
Posts: 338
Joined: Wed Dec 26, 2007 5:26 am
Location: US
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#10 Post by bloodywyvern »

chronoluminaire wrote:Yeah, that's just not something that's supported. You can still use the mouse to do everything: all that moving the cursor does is scroll the map (which you can do with mouse with the scrollbars), and simulate clicking on a unit (which you can do with mouse by just clicking on it.)
Aww darn, well that's fine then. Just thought I'd mention it since I'm more used to the speed of the mouse.
chronoluminaire wrote:you can do this. This isn't my behaviour, just the behaviour of the Ren'Py launcher. If you put the "game" directory directly in the same place as renpy.exe, then it'll start that one project automatically. But if you create a subdirectory (called something like EngineDemos) and put the game directory in that, then clicking renpy.exe will bring up the launcher, and you'll be able to select EngineDemos as the project to launch.
Hm alright, thanks a lot. That's a big help since I kind of...need the launcher O.o And having the demos outside the directory was just a pain.
Project - R.E.M: Reality's Dream - Team head/Lead Writer
Other projects - Jamais Vu (script 10k), Chronicles of Etemis
Scripts in planning- 1

chronoluminaire
Eileen-Class Veteran
Posts: 1153
Joined: Mon Jul 07, 2003 4:57 pm
Completed: Elven Relations, Cloud Fairy, When I Rule The World
Tumblr: alextfish
Skype: alextfish
Location: Cambridge, UK
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#11 Post by chronoluminaire »

bloodywyvern wrote:
chronoluminaire wrote:Yeah, that's just not something that's supported. You can still use the mouse to do everything: all that moving the cursor does is scroll the map (which you can do with mouse with the scrollbars), and simulate clicking on a unit (which you can do with mouse by just clicking on it.)
Aww darn, well that's fine then. Just thought I'd mention it since I'm more used to the speed of the mouse.
I don't understand the problem. What is it you'd like to do with the mouse that you can't? Putting the cursor on a square doesn't do anything.
(I might add in a later release some way to hide the cursor, or perhaps only show it when the player presses an arrow key or suchlike.)
I released 3 VNs, many moons ago: Elven Relations (IntRenAiMo 2007), When I Rule The World (NaNoRenO 2005), and Cloud Fairy (the Cute Light & Fluffy Project, 2009).
More recently I designed the board game Steam Works (published in 2015), available from a local gaming store near you!

bloodywyvern
Veteran
Posts: 338
Joined: Wed Dec 26, 2007 5:26 am
Location: US
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#12 Post by bloodywyvern »

chronoluminaire wrote:I don't understand the problem. What is it you'd like to do with the mouse that you can't? Putting the cursor on a square doesn't do anything.
(I might add in a later release some way to hide the cursor, or perhaps only show it when the player presses an arrow key or suchlike.)
That's the point, I'd like it to do something. Like instead of moving the sprites with the arrow keys, you place the mouse on the tile you want them to move to and click. Ta da! Haha, I'm just more used to is all.
Project - R.E.M: Reality's Dream - Team head/Lead Writer
Other projects - Jamais Vu (script 10k), Chronicles of Etemis
Scripts in planning- 1

Hentai Senshi
Regular
Posts: 105
Joined: Wed Aug 08, 2007 9:37 pm
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#13 Post by Hentai Senshi »

chronoluminaire wrote:Hmm. I'm sorry, Hentai Senshi, but I don't see either of those errors. Which version were you using - the bare game directory, or one of the installs? The game directory will only work with Ren'Py 6.6. And also, what's your OS? I've searched the whole game directory and not found any reference to "fmxo". It'd be helpful if you could post the full traceback for the second error.

Oh - one possibility is that you don't have the performance-fixed display directory from Py'Tom. Sorry, I forgot to post the link to those. I've edited that link into the first post.
Bare game directory in a dummy project on renpy 6.6.0 on Linux. Adding the display fix appears to make the fmxo crash go away (I'm not entirely certain, because I didn't test thoroughly enough to reliably replicate it the first time around) and makes the buildings in the TileEngine village test clickable.

I still get the assertion error trying to use the UnitEngine village demo.

Code: Select all

I'm sorry, but an exception occured while executing your Ren'Py
script.

AssertionError: UnitEngine() must be called with a movement_style equal to UnitEngine.MP or UnitEngine.AP !

While running game code:
 - script call at line 86 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/demos.rpy
 - script at line 38 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/villagedemos.rpy
 - python at line 55 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/villagedemos.rpy.
 - python at line 103 of I:\Creations\Tactics\renpy-6.6.0\Tactics/game/unitengine.rpy.

-- Full Traceback ------------------------------------------------------------

  File "/c/Documents and Settings/Administrator/Desktop/renpy-6.6.0+UNITENGINE/renpy/bootstrap.py", line 210, in bootstrap
    renpy.main.main()
  File "/c/Documents and Settings/Administrator/Desktop/renpy-6.6.0+UNITENGINE/renpy/main.py", line 303, in main
    run(restart)
  File "/c/Documents and Settings/Administrator/Desktop/renpy-6.6.0+UNITENGINE/renpy/main.py", line 92, in run
    game.context().run()
  File "/c/Documents and Settings/Administrator/Desktop/renpy-6.6.0+UNITENGINE/renpy/execution.py", line 199, in run
    node = node.execute()
  File "/c/Documents and Settings/Administrator/Desktop/renpy-6.6.0+UNITENGINE/renpy/ast.py", line 554, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide)
  File "/c/Documents and Settings/Administrator/Desktop/renpy-6.6.0+UNITENGINE/renpy/python.py", line 874, in py_exec_bytecode
    exec marshal.loads(bytecode) in store, locals
  File "I:\Creations\Tactics\renpy-6.6.0\Tactics/game/villagedemos.rpy", line 55, in <module>
  File "I:\Creations\Tactics\renpy-6.6.0\Tactics/game/unitengine.rpy", line 103, in __init__
AssertionError: UnitEngine() must be called with a movement_style equal to UnitEngine.MP or UnitEngine.AP !

While running game code:

Ren'Py Version: Ren'Py 6.6.0e
Project statii:
Yuri no Yume: Wet Night: Released!
Tentacularity: Released!
LoliFindsKitten: AlphaBetaThingy...

User avatar
Vatina
Miko-Class Veteran
Posts: 862
Joined: Mon May 08, 2006 2:49 am
Completed: Blue Rose, AO: Broken Memories, My Eternal Rival, Dust
Projects: AO: Fallen Star
Organization: White Cat
IRC Nick: Vatina
Tumblr: vatinyan
Deviantart: Vatina
itch: whitecat
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#14 Post by Vatina »

Am I the only one who experienced that the game lagged somewhat when the moving around part began?

Also, I think it would be a good idea if you could move the units with a click of the mouse as well :) Unless it's not possible to do, of course.

Apart from that this looks good so far ^_^

chronoluminaire
Eileen-Class Veteran
Posts: 1153
Joined: Mon Jul 07, 2003 4:57 pm
Completed: Elven Relations, Cloud Fairy, When I Rule The World
Tumblr: alextfish
Skype: alextfish
Location: Cambridge, UK
Contact:

Re: TileEngine and UnitEngine: v1.0 released!

#15 Post by chronoluminaire »

Vatina wrote:Am I the only one who experienced that the game lagged somewhat when the moving around part began?
If you were running without the display fix, that's very likely. I was seeing framerates of 2 seconds or slower without the fix.

With the fix, the display rate still isn't great - perhaps 8-10 frames a second. But I had a long discussion with PyTom about that in the "Identifying causes of slowdown" thread, and basically, I'm going to have to write a user-defined displayable to fix it, which will take me some brain-bashing against Ren'Py's innards. I still plan to do it, but it won't be soon.
Vatina wrote:Also, I think it would be a good idea if you could move the units with a click of the mouse as well :) Unless it's not possible to do, of course.
You can. Perhaps I should post the basic interface, as a few people seem to be confused about this.

In the Unit Engine combat demo:
* Click on a unit (of either side) to select it. (With keyboard, move using the arrow keys or numpad, and click with space, enter or return.)
* Click "Move" or "Act" at the top to enter Move mode or Act mode. (With keyboard, press M or A.)
* Click "Cancel" to deselect the unit. (With keyboard, press Escape.)
* Click or click-and-drag the scrollbars to scroll the screen. (With keyboard, the screen scrolls to follow your cursor when you use arrow keys.)
* In Move mode, click on a square to move there. (With keyboard, move using the arrow keys or numpad, and click with space, enter or return.)
* In Act mode, click on a square or unit to select that square or unit as the target for the action (medikit or attack). (With keyboard, yeah, same as before.)
* In Move or Act mode, click "Cancel" to cancel that mode and go back to normal unit-selected mode. (With keyboard, press Escape.)
* To end your turn without using up all your movement and actions, click "End Turn". (With keyboard, press shift-E.)

In the Unit Engine village demo:
* Click on a building to move there. (With keyboard, press M to enter move mode, then use arrow keys and space, enter or return.) I want the user to be able to select the buildings without needing to press M, but that's a bug in the demo that I haven't fixed yet.

I did try my best to make sure every action was possible with keyboard-only and with mouse-only ^^;;
I released 3 VNs, many moons ago: Elven Relations (IntRenAiMo 2007), When I Rule The World (NaNoRenO 2005), and Cloud Fairy (the Cute Light & Fluffy Project, 2009).
More recently I designed the board game Steam Works (published in 2015), available from a local gaming store near you!

Post Reply

Who is online

Users browsing this forum: No registered users