Some features I would like to see

New releases and general discussions.

Post » Tue Jun 02, 2009 1:46 am

[quote="Aeal5566":1wrkah8h]Besides I think the grid movment behavior has an NPC selection wich moves objects randomly in a zone.[/quote:1wrkah8h]

I'm pretty sure he wants something which solves like the rts behavior, but for a large grid board like in advance wars or final fantasy tactics or any grid based game. For example, certain units can be told to move a set number of spaces and it will solve the route for them while avoiding obstacles. Also, the obstacles only have to be declared as complete squares on the grid, so this avoids path finding glitches. I admit it would be useful, but it's also pretty easily possible with a bit of research.
B
25
S
3
G
6
Posts: 1,197
Reputation: 5,620

Post » Tue Sep 29, 2009 10:56 pm

[quote="Davioware":124b4yc2]
yea this would be pretty useful, but there are ways of doing it yourself. Also why TBS behavior and not grid path finding behavior?[/quote:124b4yc2]

becuase "grid path finding behavior" is to long.

[quote="Aeal5566":124b4yc2]Besides I think the grid movment behavior has an NPC selection wich moves objects randomly in a zone.[/quote:124b4yc2]

[quote="Davioware":124b4yc2]I'm pretty sure he wants something which solves like the rts behavior, but for a large grid board like in advance wars or final fantasy tactics or any grid based game. For example, certain units can be told to move a set number of spaces and it will solve the route for them while avoiding obstacles. Also, the obstacles only have to be declared as complete squares on the grid, so this avoids path finding glitches. I admit it would be useful, but it's also pretty easily possible with a bit of research.[/quote:124b4yc2]

what Davioware said.

[quote="Ashley":124b4yc2]Usually if you are suggesting a plugin or behavior, it helps to give a comprehensive description and possibly an example list of the actions, conditions and expressions it might feature. It's impossible to tell what you really mean and precisely what you want it to do if you just give a one line or few lines saying that you want something. When a developer (if they have time) comes to develop it, they'll have to put a lot of thought in to how to design the plugin/behavior, precisely which actions, conditions and expressions to add, and so on. If you don't specify what you're after, someone may make one and it could be completely different to what you really wanted because you didn't say![/quote:124b4yc2]


[u:124b4yc2][size=150:124b4yc2]TBS Behavior[/size:124b4yc2][/u:124b4yc2]
TBSConditions

[u:124b4yc2]Movement[/u:124b4yc2]
1 Is moving
2 on arrived at target
3 on arrived at waypiont
4 on failed to find path

TBS Actions

[u:124b4yc2]Command[/u:124b4yc2]
1 add waypiont at object
2 add waypiont at position
3 move to object
4 move to position
5 stop

[u:124b4yc2]Movement[/u:124b4yc2]
1 set acceleration
2 set angle of motion
3 set deceleration
4 set max speed
5 set object type to avoid
6 set speed

[u:124b4yc2]Settings[/u:124b4yc2]
1 add pathfinding obstacle
2 regenerate obstacles map
3 set activated

TBS Expressions

[u:124b4yc2]Movement[/u:124b4yc2]
1 get X component of motion
2 get Y component of motion
3 get acceleration rate
4 get angle of motion
5 get deceleration rate
6 get destination X
7 get destination Y
8 get max speed
9 get speed

Ashley I hope this help.
B
21
S
4
G
4
Posts: 280
Reputation: 2,934

Post » Mon Dec 28, 2009 6:27 am

This would be REALLY handy. TBS games can be tough to set up piecemeal, and anyway the behavior could be applied to board games as well. This would complement the awesome Card Game plugin that already exists nicely!
B
2
G
3
Posts: 11
Reputation: 872

Post » Mon Dec 28, 2009 10:01 am

[quote="toralord":3jqkfoi3][u:3jqkfoi3][size=150:3jqkfoi3]TBS Behavior[/size:3jqkfoi3][/u:3jqkfoi3]
TBSConditions

TBS Actions

TBS Expressions

Ashley I hope this help.[/quote:3jqkfoi3]

That's... exactly the same as the RTS Movement ACEs. If you want a grid version, you should probably get rid of the "Component of motion" stuff (mixing components causes angular motion) and add some grid-specific movement settings and other griddy type things.

Actions:
Move Space (Up, Down, Left, Right)
Move to Destination Cell (Closest, Exact)*
Set Destination Cell at (XY) **
Stop at Next Cell

* "Exact" can return two values: Failed and Arrived. If there is no path, the object will not move and return Failed. "Closest" can return two values: Blocked and Arrived. If there is no path, the object will move as close as possible and then return Blocked. With either option, if the object arrives at its destination it will return Arrived. Can be used for trigger conditions.

** Any XY values when used in conjunction with TBS will be converted to the closest grid cell.

Conditions:
Compare Direction (Up, Down, Left, Right)
Cell at XY is Open
Is Moving
Has (Object) in Adjacent Cell (Up, Down, Left, Right)
On Failed to find Exact path
On Arrived at Destination
On Blocked from Destination

Expressions:
Get current direction (Returns Up, Down, Left, Right)
Get Cell at Coordinates (XY)
Get Current Cell
Get Destination Cell (Returns XY, or current cell XY if not moving)


Of course, depending on how you want it to work, you'll probably want different ones. I'm just throwing out ideas here off the top of my head, some of these might not even work.

Also, you may want to consider some sort of Turn Based stuff as well. ACEs for handling, you know... turns :P
Moderator
B
5
S
2
G
6
Posts: 4,348
Reputation: 10,971

Post » Mon Dec 28, 2009 12:15 pm

[quote="deadeye":otuu3ehy][quote="toralord":otuu3ehy][u:otuu3ehy][size=150:otuu3ehy]TBS Behavior[/size:otuu3ehy][/u:otuu3ehy]
TBSConditions

TBS Actions

TBS Expressions

Ashley I hope this help.[/quote:otuu3ehy]

That's... exactly the same as the RTS Movement ACEs. If you want a grid version, you should probably get rid of the "Component of motion" stuff (mixing components causes angular motion) and add some grid-specific movement settings and other griddy type things.

Actions:
Move Space (Up, Down, Left, Right)
Move to Destination Cell (Closest, Exact)*
Set Destination Cell at (XY) **
Stop at Next Cell

* "Exact" can return two values: Failed and Arrived. If there is no path, the object will not move and return Failed. "Closest" can return two values: Blocked and Arrived. If there is no path, the object will move as close as possible and then return Blocked. With either option, if the object arrives at its destination it will return Arrived. Can be used for trigger conditions.

** Any XY values when used in conjunction with TBS will be converted to the closest grid cell.

Conditions:
Compare Direction (Up, Down, Left, Right)
Cell at XY is Open
Is Moving
Has (Object) in Adjacent Cell (Up, Down, Left, Right)
On Failed to find Exact path
On Arrived at Destination
On Blocked from Destination

Expressions:
Get current direction (Returns Up, Down, Left, Right)
Get Cell at Coordinates (XY)
Get Current Cell
Get Destination Cell (Returns XY, or current cell XY if not moving)


Of course, depending on how you want it to work, you'll probably want different ones. I'm just throwing out ideas here off the top of my head, some of these might not even work.

Also, you may want to consider some sort of Turn Based stuff as well. ACEs for handling, you know... turns :P[/quote:otuu3ehy]

I left out some thing when it come to the turn base stuff, and the properties bar part.
I did that so I could learn some more TBS, Pathfinding and so on.
The RTS behavior as a template for TBS works best I think,
I try using the RTS behavior to make a TBS.
The only reason I don't use the RTS is it is not pixel perfect.
After making a TBS system by hand I came up with some new features/ ideas I would like to add the my list.
B
21
S
4
G
4
Posts: 280
Reputation: 2,934

Post » Mon Dec 28, 2009 4:51 pm

When I said "Usually if you are suggesting a plugin or behavior, it helps to give a comprehensive description and possibly an example list of the actions, conditions and expressions it might feature", I didn't mean paste in the actions, conditions and expressions of an existing behavior. That's not thinking through how it's going to work at all! Rather than focus on the similarities to another behavior, focus on the differences, what's new about it, what it will do, how it will do it, why it's easier, why it's better than existing ways, how it integrates with existing features, the ways in which it will control objects, etc. etc. etc. There's a lot to think about.

Behaviors aren't made by waving a hand and saying "it'll probably do something like that". Behaviors like the RTS movement are extremely carefully thought out and the algorithms and functionality are very carefully designed. That's necessary because programming is necessarily specific (you're instructing the computer precisely what to do). Feature requests which aren't well thought out are vague (so programmers don't see the benefit of going to all the effort) and also may result in something you didn't want, because you never said exactly what it was you wanted!
Scirra Founder
B
359
S
214
G
72
Posts: 22,946
Reputation: 178,478

Previous

Return to Construct Classic Discussion

Who is online

Users browsing this forum: No registered users and 0 guests