Heretic86

Veteran
Veteran
Joined
Nov 30, 2014
Messages
253
Reaction score
177
First Language
Engrish
Primarily Uses
I am still around, focusing on something a bit different.

I have been experimenting to see if I can remake the RPG Maker XP Engine in Javascript, driven on the back end by PHP and MySQL.

There is a lot of work to do on this, but the Tile Editor is complete and some of the back end stuff is done, Event Editor is done, the game engine itself has not been started yet so this is not playable or even close to Alpha stage...

I am deviating from the XP Editor in many places to try to put in IMPROVEMENTS to things I felt that the XP Editor is lacking. One thing you can immediately notice is there are four graphic layers instead of 3, and an "Auto" mode... Other things like "Zoom" by just rolling your Mouse Wheel or "Pan" (like Photoshop) where you can hold down the Spacebar and click drag your mouse to pan the map.

These screenshots are of a WEB PAGE so this is all DONE in PURE HTML and Javascript! Not even the JQueries (too much overhead)! Map is just a simple map I slapped together...

XPJavascript1.png


Layers:

XPJavascript2.png


Zoom Out:

XPJavascript3.png


Zoom In: (is this zoomed in enough?)

XPJavascript4.png


Improvement: Error Detection (This Event has an error where the Condition Switch is out of range, so it is HIGHLIGHTED)

XPJavascript5.png


Zooming and Panning:

XPJavascriptZoomPan.gif


If I am able to finish this and you want to make games using this, your players wont need to download or install ANYTHING, the plan is to simply send a LINK and play away, so no version comparability issues!






If you have ANY interest, please POST!




Not just scripters but anyone with a general interest...
 

Jragyn

JABS codemonkey
Veteran
Joined
Aug 14, 2012
Messages
348
Reaction score
262
First Language
English
Primarily Uses
RMMZ
While RMXP was where scripting stole my heart, I would have to ask: why remake the RMXP engine, and not try and just leverage the base of the latest RMMZ or something and upgrade the editor for that? All the backend work is largely done leaving all the front-end work in your hands instead.

That being said, I'd be interested at poking around in the source code.
 

Heretic86

Veteran
Veteran
Joined
Nov 30, 2014
Messages
253
Reaction score
177
First Language
Engrish
Primarily Uses
While RMXP was where scripting stole my heart, I would have to ask: why remake the RMXP engine, and not try and just leverage the base of the latest RMMZ or something and upgrade the editor for that? All the backend work is largely done leaving all the front-end work in your hands instead.

That being said, I'd be interested at poking around in the source code.
Honestly, I still like XP the best, and I just cant stand newer versions, mostly because of the chibi sprites and style of the game maps due to the Tilemap Editor. I wanted to do remake XP just to see if I could do it in HTML and pure Javascript.

What part of the source are you interested in? Really it is just an HTML5 Canvas and a bunch of arrays to hold the assets and values, and event listeners. The Event Editor was actually more work than the Tilemap. There really isnt much that is "special" about any given part of it, just a LOT of HTML, CSS, Javascript, PHP and MySQL. Together tho, I think it shows some things about all versions of RPG Maker that could use a little TLC, such as highlighting detectable errors like Invalid Item / Weapon / Armor / State or Switch IDs...
 

Jragyn

JABS codemonkey
Veteran
Joined
Aug 14, 2012
Messages
348
Reaction score
262
First Language
English
Primarily Uses
RMMZ
Honestly, I still like XP the best, and I just cant stand newer versions, mostly because of the chibi sprites and style of the game maps due to the Tilemap Editor. I wanted to do remake XP just to see if I could do it in HTML and pure Javascript.
Hey, I'm not one to judge. I also don't care much for the chibi sprites, but ultimately, assets can always be swapped in or out. The underlying engine itself and its capabilities is typically what I refer to when it comes to talking about the various RPG Makers. In either case, whether its XP or one of the later ones, its quite a feat! Reminds me of that "ARC Editor" that I saw Blizzard and co. working on in the days of XP yore...

What part of the source are you interested in?
Though I realize you probably don't have it complete, the database functionality is what I'm most interested in. I was actually debating writing an alternative GUI myself for RMMZ to manipulate the database files with a bit more modern of a flair, but have been quite lazy to take on that effort.

Just the same, good work pal!
Though, I wonder if this violates any sort of legalities associated with doing XP things outside of RMXP?
 

Heretic86

Veteran
Veteran
Joined
Nov 30, 2014
Messages
253
Reaction score
177
First Language
Engrish
Primarily Uses
Hey, I'm not one to judge. I also don't care much for the chibi sprites, but ultimately, assets can always be swapped in or out. The underlying engine itself and its capabilities is typically what I refer to when it comes to talking about the various RPG Makers. In either case, whether its XP or one of the later ones, its quite a feat! Reminds me of that "ARC Editor" that I saw Blizzard and co. working on in the days of XP yore...


Though I realize you probably don't have it complete, the database functionality is what I'm most interested in. I was actually debating writing an alternative GUI myself for RMMZ to manipulate the database files with a bit more modern of a flair, but have been quite lazy to take on that effort.

Just the same, good work pal!
Though, I wonder if this violates any sort of legalities associated with doing XP things outside of RMXP?

Well, one thing I have to be careful of is Copyright stuff, so when / if this goes live, I will have to work with Enterbrain for users to use properly licensed assets, otherwise I dont think they can just use Enterbrains assets for free. I mean I guess its fine for games that arent distributed. But for games that people might wanna sell, we would have to see what Enterbrain says about authorized use of those assets with a legit valid license and how to do that.

But the plan is to allow people to create their own assets (including scripts), and share them (or sell them?).

Which part of the Database are you referring to? The term "Database" is a bit ambiguous as there is a "Database" in the XP engine for the Items, Armors, Actors, etc, and there is a MySQL database. For the MySQL stuff, all I am doing is storing it with a RowID, GameID, and stringified JSON string! Thats it! Nothing really special there either!

let item[1] = { name : 'Potion', icon : '021-Potion', description : 'Restores HP to one ally.' };
let string = JSON.stringify(item[1]);

Then simply use AJAX / XHR to post to the back end, then Post handles Insert / Update! Seriously, there is VERY LITTLE that is beyond the ability of an average scripter! Pulling back out is just as easy! Once data comes out, its just a matter of $items[1] = JSON.parse(data); and doing that for each item! Not quite Rocket Surgery...

Other things did throw me off like I needed to use SVG to create an effect in the editor for Color Tone:

svg.gif


I havent got to the game engine yet, and not sure how the use of SVG Color Matrix will be pulled off just yet...

Thing is, it cant exactly be compatible with the XP Editor. Not planning on it to be.

Big thing that I doubt anyone thinks about is security risks to users due to allowing users to write their own Javascript scripts. Work in Progress on this, but Im using Content Security Policies so scripts are allowed ONLY from the page that loads the scripts and no where else. Thus a person cant create an acct, then use the script editor to link to malicious scripts. Those are the back end things that lot of folk dont consider!
 
Last edited:

Heretic86

Veteran
Veteran
Joined
Nov 30, 2014
Messages
253
Reaction score
177
First Language
Engrish
Primarily Uses
Update:

I realized that I did not publicly answer a question about what I was using for the Database, in regards to the Game Database where the values of Items, Actors, Weapons, Armors, etc is done. Back End in regards to Server / Client for a storage engine will be MySQL.Well, I started working on the Game Database today.

There will be a lot for me to do on this. A lot of the stuff is already done, such as Event Editor. I still need to completely refactor that Event Editor code that handles Event Commands so it can be portable to the Database for the Battle Event Editor and Common Event Editor. Aside from that, its really just very simple HTML, CSS, and Javascript that sets Object Properties!

Some of the things that I am thinking about are how to make a Game Database that improves on the current XP design. One of the things that I think people will appreciate in the Event Editor is the Error Highlighting. I do plan on maintaining that as a feature in the Game Database. For example, you change the number of Game Switches but an Event references a Game Switch that is out of range, that Event and the Event Page will be given highlight.

So, question for folks, are there any other "Improvements" that you can think of to the XP Game Database that you might want to see?

I have a question for you all... What is the formula to calculate Experience Inflation? I remember having seen it elsewhere?
 

Zeriab

Huggins!
Veteran
Joined
Mar 20, 2012
Messages
1,342
Reaction score
1,548
First Language
English
Primarily Uses
Other
  • Variable by variable reference
  • Switch by variable reference
Two excellent features that unfortunately got abandoned in RMXP.

Good luck with the project~
 

Heretic86

Veteran
Veteran
Joined
Nov 30, 2014
Messages
253
Reaction score
177
First Language
Engrish
Primarily Uses
  • Variable by variable reference
  • Switch by variable reference
Two excellent features that unfortunately got abandoned in RMXP.

Good luck with the project~
Like a Variable Variable, or a Variable Switch? Where would you like to see those implemented?
 

Zeriab

Huggins!
Veteran
Joined
Mar 20, 2012
Messages
1,342
Reaction score
1,548
First Language
English
Primarily Uses
Other
Hmm... On the top of my head I can mentioned 3 places
  • Control Switches
  • Control Variables
  • Conditional Branch
There are probably also additional places with selection by specific id where adding an option to select id with variable reference can be useful.
 

Heretic86

Veteran
Veteran
Joined
Nov 30, 2014
Messages
253
Reaction score
177
First Language
Engrish
Primarily Uses
It can be found in the Script Editor: Game_Actor#make_exp_list
Thanks!

expCurve.png


It looks like calculations for the Parameter Curves are handled in Editor but nothing really in Engine Code. Anyone happen to know how to calculate the Parameter Curve so the growth is not linear?

Screenie from XP Editor...
XPParamCurve.png


Anyone? Bueller? Bueller?
 

Latest Threads

Latest Posts

Latest Profile Posts

I'm having a surprisingly easy time with the wait for Hogwarts Legacy, though I know other gamers are salivating hard.
:awat:What are you two down there doing?
This status is here just to take up space. And to make you read that.
Commenting just for the sake of commenting. :biggrin:
Just... two more to go...
dylan kickstaeter.png

Forum statistics

Threads
124,354
Messages
1,162,979
Members
163,147
Latest member
mayasmith7464
Top