• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

[Engine] Pokemon Java Engine [RELEASE]

Status
Not open for further replies.

Flameguru

Pokemon: Metallic Silver
517
Posts
18
Years
  • Seen Mar 26, 2024
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.
 
Last edited:

Poeman

Banned
755
Posts
15
Years
  • Age 29
  • Seen Nov 1, 2012
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!
 
Last edited:

Flameguru

Pokemon: Metallic Silver
517
Posts
18
Years
  • Seen Mar 26, 2024
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.
 
Last edited:

davidthefat

I Love C++
437
Posts
14
Years
  • Age 30
  • Seen Mar 3, 2012
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     |<------| SHITCAN IT |
                      +-------------+       +------------+
 
Last edited:

Flameguru

Pokemon: Metallic Silver
517
Posts
18
Years
  • Seen Mar 26, 2024
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 :)
 

Poeman

Banned
755
Posts
15
Years
  • Age 29
  • Seen Nov 1, 2012
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.
 

davidthefat

I Love C++
437
Posts
14
Years
  • Age 30
  • Seen Mar 3, 2012
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
 

Poeman

Banned
755
Posts
15
Years
  • Age 29
  • Seen Nov 1, 2012
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.
 

Spira

Programmer for Pokemon Eternity
131
Posts
14
Years
  • Seen Mar 4, 2023
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.
 

KingCharizard

C++ Developer Extraordinaire
1,229
Posts
14
Years
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...
 

Flameguru

Pokemon: Metallic Silver
517
Posts
18
Years
  • Seen Mar 26, 2024
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.
 

davidthefat

I Love C++
437
Posts
14
Years
  • Age 30
  • Seen Mar 3, 2012
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?
 

Flameguru

Pokemon: Metallic Silver
517
Posts
18
Years
  • Seen Mar 26, 2024
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.
 

Youji

Game Designer
602
Posts
16
Years
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^^
 

Cilerba

the hearts of lonely people
1,162
Posts
14
Years
Oh, this will be quite useful. Will there ever be a better font for the text instead of just a plain font like that?
 

Flameguru

Pokemon: Metallic Silver
517
Posts
18
Years
  • Seen Mar 26, 2024
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.
 

Cilerba

the hearts of lonely people
1,162
Posts
14
Years
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 :)
 

KingCharizard

C++ Developer Extraordinaire
1,229
Posts
14
Years
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...
 
Status
Not open for further replies.
Back
Top