2. What is IsoUnity
+ A toolkit for Unity
=> Retro-Isometric Videogames
+ Pixel Friendly!
+ Developed in the UCM since 2014
=> 3 TFGs + 2 Free projects
=> First Narratech package
3. Who is it destinated?
Recover the retro-isometric style
Isometric videogames were very
popular in the 80s.
- > Filmation engine
- > Knight Lore
- > La Abadía del Crimen
Are them popular today?
- > Yes, but we miss the pixel art
4. Highlighted projects
IsoAbbey + IsoMonks
- Concept of LADC
- Agent based game
made with Jason
Tiny World
- Agent based
game for pro-
blem solving.
6. What does it provide?
IsoUnity is a:
-Map editor
- Made to help you with the pixel art!
-Entity and message manager
- With event based programming!
-Interaction controller
- Forget about dealing with Inputs!
-Visual programming system
- And even forget about programming!
7. Map editor
Create your maps in a couple of
clicks!
-1º Establish cells with different
heights and shapes!
-2º Paint the cells!
-3º Decorate as you want!
-4º Place the
entities and
make it alive!
-5º ?????
-6º PROFIT!
8. 1º Cells!
Create a map by adding cells:
- Left click -> Creates
- Right click -> Changes the height
- With custom handles to easily
manage the height!
9. 2º Paint!
Place your textures!
-> In IsoUnity we respect the pixel
¡Assisted
mappings!
¡Respect the
pixel,for my
father!
10. 2º Paint!
Easy controls!
- Left click: Put
- Left click + shift: Extracts
Paint a cell or the whole surface...
- You can even create your own
brushes!
12. 3º Decorate!
For it...
-Define the decoration
-Multi-tile is supported
-You can even create animated
decorations in a few clicks!
13. 4º Entities!
Make your decorations alive!
Envity: Manages the behaviours
EntityScript: Behaviour with
- Update
- Events
- Public announce
the interactions.
(ie: talk to me!)
Some scripts
out of the box:
Mover(A*), Player,
Talker, Item,
Inventory,Teleporter
14. ¿Events?
The events provide a uncoupled
generic interface for programming:
“If an event I’m interested into
happens, then I respond...”
Ie: “move”, “add item”, “talk”, etc.
1º Allow to announce my actions and
requirements.
-> Ej: To talk to me use a “talk”
event at 1 cell distance.
2º Allow for serialize programming.
-> Blueprint-like sequence
programming editor.
15. ¿EntityScript?
Might seem complex but...
¡It isn’t!
-> Expose your script to the player!
-> Use [GameEvent]
and transform your
method or coroutine corutina
into event!
16. ¿EventManager?
But... ¿what if I need to manage
events globally or invisible?
Then just use an ¡EventManager!
1º It’s like
an entity
without
visuals.
2º Receive
the events
3º Manage them
as you want
17. ¿What have you said
about the input?
Controller: Unifies the Input from
keyboard, mouse and touch.
-Gathers the state.
-Checks the blocking GUIs.
-Call the different managers (ie:
the map manager).
- Gathers the cell,
entities and options.
-Sends to the listeners => Player
¡So simple that
seems magic!
18. Sequences
Well... What was you saying about
visual programming??
Program your interactions!
It’s simple easy and for all the family!
19. ¿What are the sequences?
-A set of ordered actions.
-They have an editing part
- They can be serialized both in the scene
or as an asset.
- Editor visual tipo BluePrint
Much BluePrint
Very Sequence
Wow
20. Variables
Serialize and control variables
¡IsoSwitches! (the Iso is for the brand...)
Store basic/Unity.Object types
and use the values in
the sequences or in-game!
-Globals
-Locals
Write them from a node ->
21. Dialogs with options
Add fragments, give options to the
player and choose a way for his
responses.
-Use the
variables
with $var
-or<$ var $>
-Put
conditions
to options
-Target
Entities
22. Events
All the events from our EntityScript
are avaliable for programming
But also you can generate editors
automatically with the [GameEvent]
Use “synchronized” to wait it
finish!
23. Forks
Use forks to be able to choose from
conditions:
-Formulas with variables
-Check Items in the inventory
-“Multiforks”
24. Launch
Use the Talker:
-¡It will launch the sequences when
the player interacts with it!
...or prepare your sequence in a
SequenceLauncher or Macro:
-Allows executing sequences in
many different ways
(background,
loop, on start...)
-And/or from asset
25. Extensibles
There is an extensible API!
-Create new contents [NodeContent]
-For complex cases use INodeContent
-Create atomic node contents with
ISimpleContent or create an
interprete for your content with
the ISequenceInterpreter
-Create editors
NodeContentEditor
and it will
appear
automatically!
26. Independent
And the best is that...
¡It can be used out of IsoUnity!
“Perfect for narrative adventures”
Say Something
Save Someone
(Winner of HFG 2017)
Stop Ciber Bulling
(Antonio Calvo e-UCM)
27. We need you!
IsoUnity is the most complex and
powerfull toolkit an indie would
wish...
¡We need community!
Next release: Late 2017
Search us in Github:
https://github.com/Victorma/IsoUnity
https://github.com/Victorma/Puppeteer
Or in:
http://isounity.com
I WANT
YOUR F**N
PIXELS!
28. The IsoDevs
IsoUnity is an open-source toolkit
developed by:
Victorma Pérez Colado (MSc)
Researcher at e-UCM
victormp@ucm.es
Iván J. Pérez Colado (MSc)
Researcher at e-UCM
ivanjper@ucm.es