Encounter System

by TheDarkChakra
An Encounter System like Pokemon and Final Fantasy
Its back and it works!!

-Make teams
-Randomly encounter enemies on turf
-Teleport to the battlefield when you encounter enemies
-Turn by turn battle system players one through three at the battlefield
-Attack enemies using different methods, use items or run away
-Enemies each have different ways of attacking
Dr.Penguin wrote:
The attacks are automaticly 10 its better to add rand(1, 100)

It's different for every person, it's just how much the person wants the damage to be.
It's a demo. It would help more to understand that you're not going to be copy/pasting any of the demo's code into an actual project, so specific numbers don't matter.

Of course, it's a poorly-made demo too.
Urias wrote:

As much as I'd like to specify what all is wrong with it, I don't have all day, but here are some basic things:

Abuse of for() to just get a reference on things.
1-letter-long variables.
Way too tied to specific coordinates, even for a demo.
Lots of copy/pasted code blocks (poor encapsulation).
Move() is a mess.
In response to Kaiochao
Kaiochao wrote:
Of course, it's a poorly-made demo as well.
Urias wrote:

As much as I'd like to specify what all is wrong with it, I don't have all day.

I haven't fixed all the bugs yet, XD. I am a lower intermediate and its my first demo. I didn't know it goes that public. I have more work to do on it but I am ambitious on its success. I am not sure I will succeed, though. For some reason multiplayer doesn't work like it should anymore. I will have to fix that. Sometimes I get a double turn. I have to fix that too.

But I did spend over 10 hours trying to do this and am surprised I got even this far. Even if its bad it might still teach a newbie or someone a thing or two or be able to help as a resource for someone who needs such a battle system.
In response to TheDarkChakra
Word of Advice: Before you publish a library/demo, make sure it is polished first. (i.e., removal of known bugs)

In response to Urias
Urias wrote:
Word of Advice: Before you publish a library/demo, make sure it is polished first. (i.e., removal of known bugs)

I know. But I really wanted to publish this :(.
Okay. I put about 5 more hours of work (at least) and improved it. Its a bit better now. I commented it, destroyed the double turn, exterminated some bugs and now you can play more or less perfectly as 1 player. And more. Now to just fix it for 3 players.
what? did i upload the wrong file?
looks like it. okay i uploaded the right one now
I put up the right one now
I updated this demo again
I significantly improved the coding but its not ready yet. Maybe in a couple of months more.
Yeah now I did it RIGHT!
Hey there! Thanks for working on it, and re-submitting.

Firstly I'd like to say that it's pretty obvious you've put some decent effort into re-working this, and the benefit is shown mostly in readability. I am still a bit unsure of what's happening in Move() though?

In general, there is a lot of improvement to be had in terms of design and good practice. For example I think you could keep a list of parties globally, and use that for joining/creating teams instead of going through everything in the world. I appreciate it's a demo, but that kind of thing if emulated in a real game would probably not help the CPU use at all.

proc/newturnstwo() is kind of lengthy, and would be quite a pain to maintain. Is it possible for you to rework this so that it can handle any number of party members? It should be possible.
-Move() is about if you are the leader of your team and you walk on map you will encounter enemies

-What do you mean keep a list of parties globally?

-I'm trying to shorten newturnstwo() but so far I can't
There you go.

-I changed Move() where the coding under the grass turf under Entered() so when you walk on grass you randomly teleport to enemies

-I made it so the lists are kept globally in a list variable

-I shortened newturnstwo() to be able to handle any amount of players

I didn't need datums after all.
this is great.

I think it's odd how people are bashing your hard work.

if you don't like what was done here...

fix the code.

you can do that.