Go Back   The PokéCommunity Forums > Creative Discussions > Game Development
Reload this Page Pokemon Java Engine [RELEASE]

Notices
For all updates, view the main page.

Game Development Your number one stop for anything related to creating games (except ROM hacks). You can even make your own!



Reply
 
Thread Tools
  #1    
Old June 14th, 2010 (07:23 PM). Edited April 19th, 2013 by Flameguru.
Flameguru's Avatar
Flameguru Flameguru is offline
Pokemon: Metallic Silver
 
Join Date: Oct 2005
Age: 23
Gender: Male
Nature: Rash
Posts: 519
Pokemon Engine in Java
By: Flameguru

Info:

I am currently in the process of developing a Pokemon Engine in Java. I am posting here to see if anyone here is interested in contributing to this project. If anyone here has knowledge of the Java language, it would be deeply appreciated if you could contribute to this project.

Some people may wonder why I would ever want to create an engine in Java while there is a perfectly good engine for RMXP. Many would argue that the RMXP engine is a million times easier to use, and they would all be correct. So whats the point? Well, I'm just in the mood for something different.

Doesn't it seem like more of an accomplishment to create a game based on a community driven game engine in Java than RMXP? I think this has a lot of potential so I am releasing the source along with the javadoc summary of the class files.

Videos of the Engine (OLD):

http://www.youtube.com/watch?v=0oBJYkn1ArM
http://www.youtube.com/watch?v=oDnssgVMahM

Spoiler:



Pictures of the Engine:

Spoiler:













Progress so far includes:

Title Screen - Pretty simple, but none-the-less, authentic feeling.
Continue Screen - Once again, simple, but it works and feels authentic.

Map System - Supports creation of Maps in a Map Editor that is included. It can have up to 3 layers but 2 is the optimal amount for slower computers. This is currently a semi-hard coded process. Maps are a large one-dimensional array that gets filled with values from a text file in the Data Folder. So the maps are part of the class, but are filled with values externally.

Overworld System - The player can walk around on a grid composed of 32x32 tiles. Walking animation is done and interaction with NPC's is functional.

Basic Menu System - Basic functions are done such as selections of menu items and the trainer card option is fully done. Other options are image placeholders with little or no code.

Battle System - Functional but all actions are outputted via the console instead of being displayed on screen. Status conditions and checks are performed. There are a variety of different moves and their powers are all different. The enemy AI is still proof of concept, but functional. If the player's pokemon faints, you will be teleported to a Pokemon Center. If you win, you will get EXP and eventually level up (stats are also increased). If you run, no EXP is earned.

Map Transfer - The player can be transferred to any map on any tile. This is achieved by using two strings and four integers. Its simple and works.

Wild Encounters - A random integer is created every 32 milliseconds and a integer is incremented every time the player steps on wild encounter tiles (known to the game as tile 17 in the tileset) Once this integer is greater than or equal to the randomly generated integer, a wild battle will be created.

Save System - Simple, outputs certain variables values to Data/profile.sav
Load System - Simple, sets certain variable values from Data/profile.sav

Download:

Source Code, Jar, and JavaDoc - Initial Public Release

Map Editor - by Judd - Put this in the Graphics Folder

Final Notes:

Currently, impassible tiles, event tiles, and NPC's are hard coded into an array. I am hoping to save this data into the map files themselves (similar to RMXP), but I'm not sure how to go about it.

Pokemon stats are also hardcoded into the Monsters class. I have started work on a method to load their data from Data/pokemon.txt but it does not work.

There is still much work to be done and this is in no way shape or form considered even remotely complete. This is simply a proof of concept, so please don't complain if a lot of things don't work or there are missing features (and there are).

If you are interested in contributing your skills to this project, leave a post here or PM me.

Thanks for reading.
__________________
My Projects:
Pokemon Engine for Android
Java Pokemon Engine [Thread here on PC]
Reply With Quote
  #2    
Old June 16th, 2010 (10:06 AM). Edited June 16th, 2010 by Poeman.
Poeman Poeman is offline
Banned
 
Join Date: Nov 2008
Age: 20
Gender: Male
Posts: 760
113 views, no posts?
Well it looks great, I have to read it now >_< so I'll edit in a bit after reading it all.

EDIT:
Wow man this is awesome, and just for anyone posting after me, so you know JAVA will allow the game to be run on any computer unlike POCCILS kit, so besides being neat it is useful!
Reply With Quote
  #3    
Old June 16th, 2010 (10:36 AM).
Hybrid Trainer's Avatar
Hybrid Trainer Hybrid Trainer is offline
My Secrecy. My Advantage.
Platinum Tier
 
Join Date: Nov 2008
Location: «UK»
Age: 20
Gender: Male
Posts: 1,948
its still pretty glitched up but this is a massive break through for the pokemon making era!
__________________


"I am confident that if anyone actually penetrates our facades, even the most perceptive would still be fundamentally unprepared for the truth of House Dimir."
-Szadek, Lord of Secrets

Reply With Quote
  #4    
Old June 16th, 2010 (10:41 AM). Edited June 16th, 2010 by Flameguru.
Flameguru's Avatar
Flameguru Flameguru is offline
Pokemon: Metallic Silver
 
Join Date: Oct 2005
Age: 23
Gender: Male
Nature: Rash
Posts: 519
Quote originally posted by Hybrid Trainer:
its still pretty glitched up but this is a massive break through for the pokemon making era!
Oh yeah, no doubt about that. Like I have said before, this is simply a proof of concept, so there will be a lot of glitches. I know that there are a lot of tiles that you can walk through, random messages popping up, battle errors, etc that all need fixing.

I will try to fix a lot of these bugs before I start working on added more functions. There are a lot of key features missing so there will be a lot of work ahead for me and anyone else who decides to help.
__________________
My Projects:
Pokemon Engine for Android
Java Pokemon Engine [Thread here on PC]
Reply With Quote
  #5    
Old June 16th, 2010 (11:17 AM).
kidnik kidnik is offline
 
Join Date: Jan 2010
Gender: Male
Posts: 2
lol i use "java" pokemon games on my phone through meboy app
Reply With Quote
  #6    
Old June 16th, 2010 (11:59 AM). Edited June 16th, 2010 by davidthefat.
davidthefat davidthefat is offline
I Love C++
 
Join Date: Dec 2009
Age: 21
Gender: Male
Posts: 437
I got a question, engine as in a tool kit with everything in it? I would like to contribute but I have a little thing against Java will try to contribute during summer if I have time


edit: I looked through your source... Im not really like thing way you are tackling this... Also not liking your formatting at all... I HATE that format LOL (Just a personal thing, I am very very OCD about coding)


Code:
                       +---------+
                       |  START  | 
                       +---------+
                            |
                            V            
            YES       +------------+      NO
      +---------------|  DOES THE  |---------------+               
      |               | DAMN THING |               |
      V               |    WORK?   |               V    
+------------+        +------------+        +--------------+  NO
| DON'T **** |                              | DID YOU **** |-----+
| WITH IT    |                              |   WITH IT?   |     |
+------------+                              +--------------+     |
      |                                            |             |
      |                                            | YES         |
      |                                            V             |
      |  +------+     +-------------+       +---------------+    |
      |  | HIDE |  NO | DOES ANYONE |<------| YOU ********! |    |                 
      |  |  IT  |<----|    KNOW?    |       +---------------+    |
      |  +------+     +-------------+                            |
      |      |               |                                   |
      |      |               V                                   |
      |      |        +-------------+       +-------------+      |
      |      |        |   YOU POOR  |  YES  |  WILL YOU   |      |     
      |      |        |   BASTARD   |<------| CATCH HELL? |<-----+
      |      |        +-------------+       +-------------+
      |      |               |                     |
      |      |               |                     | NO
      |      |               V                     V
      |      V        +-------------+       +------------+ 
      +-------------->|    STOP     |<------| MUKCAN IT |
                      +-------------+       +------------+
Reply With Quote
  #7    
Old June 16th, 2010 (12:26 PM).
Flameguru's Avatar
Flameguru Flameguru is offline
Pokemon: Metallic Silver
 
Join Date: Oct 2005
Age: 23
Gender: Male
Nature: Rash
Posts: 519
Quote originally posted by davidthefat:
I got a question, engine as in a tool kit with everything in it? I would like to contribute but I have a little thing against Java will try to contribute during summer if I have time


edit: I looked through your source... Im not really like thing way you are tackling this... Also not liking your formatting at all... I HATE that format LOL (Just a personal thing, I am very very OCD about coding)
My vision for this is to become a multi-platform alternative to poccil's kit for RMXP. Java is also much more powerful so more things can be accomplished that just can't using RGSS in RMXP. Not only will this be an engine, but tools required to add your own content such as maps, "events", etc. will also be made. The current Map Editor is not my own, but it is very similar to that of RMXP and I have made my code work with what that Map Editor outputs. So to answer your question, this will become more of a toolkit, but for now, it is just an engine - and a proof-of-concept at that.

I am still in the process of learning java. I have only taken two courses for java, one being a very basic class and the other I have just finished was a high school AP course. There are most certainly better ways to accomplish what I have done thus far and I would love to change over to those ways. I however, have not yet discovered those ways, so that is why I have coded this projects the way I have.

Each programmer has his or her own unique way of programming and formatting, and I am no exception. I formatted the code the way I did because that is the way that it made sense to me best. There is no set in stone formatting so there is no reason why that cannot change.

Thanks for your interest
__________________
My Projects:
Pokemon Engine for Android
Java Pokemon Engine [Thread here on PC]
Reply With Quote
  #8    
Old June 16th, 2010 (02:01 PM).
Poeman Poeman is offline
Banned
 
Join Date: Nov 2008
Age: 20
Gender: Male
Posts: 760
I don't think I'll be trying it any time soon, but seriously for a proof of concept this is good. Also, Davidthefat, was that chart actually in the engine lol, I find that kinda funny.
Reply With Quote
  #9    
Old June 16th, 2010 (02:07 PM).
davidthefat davidthefat is offline
I Love C++
 
Join Date: Dec 2009
Age: 21
Gender: Male
Posts: 437
Quote originally posted by Flameguru:
My vision for this is to become a multi-platform alternative to poccil's kit for RMXP. Java is also much more powerful so more things can be accomplished that just can't using RGSS in RMXP. Not only will this be an engine, but tools required to add your own content such as maps, "events", etc. will also be made. The current Map Editor is not my own, but it is very similar to that of RMXP and I have made my code work with what that Map Editor outputs. So to answer your question, this will become more of a toolkit, but for now, it is just an engine - and a proof-of-concept at that.

I am still in the process of learning java. I have only taken two courses for java, one being a very basic class and the other I have just finished was a high school AP course. There are most certainly better ways to accomplish what I have done thus far and I would love to change over to those ways. I however, have not yet discovered those ways, so that is why I have coded this projects the way I have.

Each programmer has his or her own unique way of programming and formatting, and I am no exception. I formatted the code the way I did because that is the way that it made sense to me best. There is no set in stone formatting so there is no reason why that cannot change.

Thanks for your interest
Eh if that is your goal, IDK I might want to start my own engine LOL written in C++ with SDL or SFML, and using OpenGL to render
Reply With Quote
  #10    
Old June 16th, 2010 (02:18 PM).
Poeman Poeman is offline
Banned
 
Join Date: Nov 2008
Age: 20
Gender: Male
Posts: 760
To be honost, it would be best if you guys banded together, even with different habits, if you got used to it then it would be an overall stronger engine.
Reply With Quote
  #11    
Old June 16th, 2010 (02:45 PM).
Spira Spira is offline
Coder for Pokemon Eternity
 
Join Date: Jun 2009
Posts: 118
Send a message via AIM to Spira
Very impressive, it will take a while before it rivals the starter kit or RPGMXP. It's a good start though and I am definitely interested in the progression.
Reply With Quote
  #12    
Old June 16th, 2010 (02:56 PM).
KingCharizard's Avatar
KingCharizard KingCharizard is offline
C++ Developer Extraordinaire
 
Join Date: Dec 2009
Location: Pennsylvania
Age: 26
Gender: Male
Nature: Bold
Posts: 1,245
Yea this is impressive but, I do wonder how long have u worked on this? I can try to contribute I'm not a big fan of java but I have worked with it and know enough to complete small tasks...
__________________
My personal website. UPDATED 8/29/2013
Reply With Quote
  #13    
Old June 16th, 2010 (03:13 PM).
Flameguru's Avatar
Flameguru Flameguru is offline
Pokemon: Metallic Silver
 
Join Date: Oct 2005
Age: 23
Gender: Male
Nature: Rash
Posts: 519
Quote originally posted by KingCharizard:
Yea this is impressive but, I do wonder how long have u worked on this? I can try to contribute I'm not a big fan of java but I have worked with it and know enough to complete small tasks...
I have only worked on this for about a month or two with only an hour here and there every other day. Let me know if you are really interested in helping by sending me a PM.
__________________
My Projects:
Pokemon Engine for Android
Java Pokemon Engine [Thread here on PC]
Reply With Quote
  #14    
Old June 17th, 2010 (07:35 PM).
davidthefat davidthefat is offline
I Love C++
 
Join Date: Dec 2009
Age: 21
Gender: Male
Posts: 437
What is your goal with this project? To be made available to people that don't know Java? So will it be a click and drag style engine or do you want it to be more toward Java programmers? Like a library?
__________________
“You have enemies? Good. That means you've stood up for something, sometime in your life.” Winston Churchill
Reply With Quote
  #15    
Old June 17th, 2010 (09:07 PM).
Flameguru's Avatar
Flameguru Flameguru is offline
Pokemon: Metallic Silver
 
Join Date: Oct 2005
Age: 23
Gender: Male
Nature: Rash
Posts: 519
Quote originally posted by davidthefat:
What is your goal with this project? To be made available to people that don't know Java? So will it be a click and drag style engine or do you want it to be more toward Java programmers? Like a library?
The engine itself will being java but unless you want to change the way things work, the user will not need to know any java.

For now, the user does need to know Java. I want to make it user friendly and available to everyone regardless of their operating system.
__________________
My Projects:
Pokemon Engine for Android
Java Pokemon Engine [Thread here on PC]
Reply With Quote
  #16    
Old June 18th, 2010 (10:39 AM).
Youji's Avatar
Youji Youji is offline
Viridian City Gym Leader
Silver Tier
 
Join Date: Jun 2007
Location: Germany
Age: 23
Gender: Male
Nature: Quiet
Posts: 599
Thanks god that I have Java in school and that I'm quite a pro in it :P

I'll have a look into it^^
Reply With Quote
  #17    
Old June 18th, 2010 (12:07 PM).
Cilerba Cilerba is offline
the hearts of lonely people
Silver Tier
 
Join Date: Feb 2010
Location: Massachusetts
Age: 18
Gender: Male
Nature: Quiet
Posts: 1,161
Oh, this will be quite useful. Will there ever be a better font for the text instead of just a plain font like that?
__________________
Reply With Quote
  #18    
Old June 18th, 2010 (01:10 PM).
Flameguru's Avatar
Flameguru Flameguru is offline
Pokemon: Metallic Silver
 
Join Date: Oct 2005
Age: 23
Gender: Male
Nature: Rash
Posts: 519
Quote originally posted by Cilerba:
Oh, this will be quite useful. Will there ever be a better font for the text instead of just a plain font like that?
I haven't put much effort into the graphics side yet because I am more concerned on functionality than eye candy. I will eventually get to making it look good, but for now, its basic.
__________________
My Projects:
Pokemon Engine for Android
Java Pokemon Engine [Thread here on PC]
Reply With Quote
  #19    
Old June 19th, 2010 (03:16 PM).
Cilerba Cilerba is offline
the hearts of lonely people
Silver Tier
 
Join Date: Feb 2010
Location: Massachusetts
Age: 18
Gender: Male
Nature: Quiet
Posts: 1,161
Quote originally posted by Flameguru:
I haven't put much effort into the graphics side yet because I am more concerned on functionality than eye candy. I will eventually get to making it look good, but for now, its basic.
Well, progress for my game Turquoise is really slow right now. If I keep at this pace, maybe I'll redo it in Java and use the starter kit :)
__________________
Reply With Quote
  #20    
Old June 21st, 2010 (06:46 AM).
KingCharizard's Avatar
KingCharizard KingCharizard is offline
C++ Developer Extraordinaire
 
Join Date: Dec 2009
Location: Pennsylvania
Age: 26
Gender: Male
Nature: Bold
Posts: 1,245
Quote originally posted by Cilerba:
Well, progress for my game Turquoise is really slow right now. If I keep at this pace, maybe I'll redo it in Java and use the starter kit

I to was concidering developing my game with this starter kit, I downloaded it but I have yet to take a look at it...

@Flameguru if I like what I see so far i'll pm you to help, I just dont jump into projects unless i know what im getting into...
__________________
My personal website. UPDATED 8/29/2013
Reply With Quote
  #21    
Old June 21st, 2010 (08:57 AM).
Flameguru's Avatar
Flameguru Flameguru is offline
Pokemon: Metallic Silver
 
Join Date: Oct 2005
Age: 23
Gender: Male
Nature: Rash
Posts: 519
Quote originally posted by KingCharizard:
I to was concidering developing my game with this starter kit, I downloaded it but I have yet to take a look at it...

@Flameguru if I like what I see so far i'll pm you to help, I just dont jump into projects unless i know what im getting into...
I wouldn't just jump into using this for a game just yet. There are still a lot of things missing. The only thing you could really consider doing at this point is editing the tileset and make your own maps. Anything else and I cannot guarantee that it will be compatible with future versions of this engine.

I am still working on this. Currently I am trying to fix trainer battles. They are part of the engine and have been for a while now, but they seem to glitch up once the battle begins.
__________________
My Projects:
Pokemon Engine for Android
Java Pokemon Engine [Thread here on PC]
Reply With Quote
  #22    
Old June 21st, 2010 (09:09 AM).
davidthefat davidthefat is offline
I Love C++
 
Join Date: Dec 2009
Age: 21
Gender: Male
Posts: 437
Quote originally posted by Flameguru:
I wouldn't just jump into using this for a game just yet. There are still a lot of things missing. The only thing you could really consider doing at this point is editing the tileset and make your own maps. Anything else and I cannot guarantee that it will be compatible with future versions of this engine.

I am still working on this. Currently I am trying to fix trainer battles. They are part of the engine and have been for a while now, but they seem to glitch up once the battle begins.
If you want more people that are actually capable, I think you should set strict requirements for each "group" or branch of the development team. First and foremost, programmers are in need.
__________________
“You have enemies? Good. That means you've stood up for something, sometime in your life.” Winston Churchill
Reply With Quote
  #23    
Old June 21st, 2010 (03:22 PM).
KingCharizard's Avatar
KingCharizard KingCharizard is offline
C++ Developer Extraordinaire
 
Join Date: Dec 2009
Location: Pennsylvania
Age: 26
Gender: Male
Nature: Bold
Posts: 1,245
@Flameguru I was gonna work on the engine and the game at the same time, this way I could use the basic systems and build them to fit my needs, but after testing this out I gotta say I actually hate java even more, while the engine isn't bad I just remembered why I hated java when I was looking at the source
__________________
My personal website. UPDATED 8/29/2013
Reply With Quote
Reply
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are UTC -8. The time now is 12:59 AM.