ARC - Another RPG Creator

I know some of you might be thinking “Oh no not another one of those games!”.
But wait! This one is different.

The ARC is not a game, but a game creator. (Those of you familiar with RPG Maker XP will notice similiar stuff here since I’ve borrowed some of their ideas).
This project is far from done, but it is getting very close to an alpha-release stage. It has support for some basic stuff like tilesets, maps (ofcourse), events, npcs but I am planning to give it additional support for stuff like sounds.

Each map can have three layers of tiles; first layer is the lowest layer for stuff like ground, second layer is mainly for ground decorations (everything on the first and second layer appear below the player) and the third layer is for tiles that appear in front of/above the player.
The player and npcs are also y-sorted before they are painted.
There is also a grid to help you place the tiles easier and a layershadow that darkens everything below your current layer (both are toggle-able on/off).

The first two screenshots are from the editor itself, the last image shows an actual ingame-screenshot. You may also notice that it says “Townlol” in a semi-transparent text on the last image; texts like that can be generated by the engine from normal strings.

http://www.trololol.se/arc1.png

http://www.trololol.se/arc2.png

http://www.trololol.se/arc3.png

An alpha-version of the ARC should be released in the next few days if someone is interested.

Looks pretty cool. How are you handling scripting and the like?

I’d recommend allowing more than 3 layers, and maybe making it possible to put in parallax values for each layer.

For scripting I think I’m going to go with Beanshell, or do you think I should go with something else?

I like the idea of more than three layers, will put that on my todo list. Thanks :slight_smile:
Also could you explain what you mean with parallax values?

That’s nice :smiley: Looking forward to trying it out.

I made something like this (although it was just an internally used editor) and I just used Java as the scripting language. Each level had a class file spat out and I would just run it. Pretty easy and required very little implementation of anything else. To make it integrate with the level editor I added in some simple extra syntax that was substituted out when the level was saved. Like there was a bug HashMap of entities, so that when you put something in the level and named it BillyBob you would type @BillyBob.doFunction() and @BillyBob would be replaced with Globals.getEntityMap().get(“BillyBob”) or whatever.

Parallax values are when the different layers scroll at different speeds. It gives the illusion of depth. In a top-down RPG, typically things like clouds or must are the only layers that are parallaxed, or maybe if you’re standing on a partially transparent grate over a pit the pit would scroll differently too. All you need to do is create a parallax value for each layer (a float) and then as the game is scrolled instead of scrolling by scrollAmount you scroll by scrollAmount * layerParallax. Normal layers get a parallax of 1.0. It creates significantly more beautiful scenery with very little effort.

Awesome, will probably have the first release ready by tomorrow :smiley:

Thanks! I will definitely consider using a scripting language like that since it seems to be much simplier than what I originally was going to use.
Parallax values sounds like an awesome idea and is added to my todo list, thanks! :slight_smile:

Hi!

An RPG maker in Java is an excellent idea, I will try your software when it is ready :slight_smile:

Finally the first public release is ready. Ofcourse since this is a very early release, there may be some bugs. I have tested it on Windows vista and xp and it should work without problems there.
In this realease you are able to:

  • Create, save and load maps.
  • Change a maps tileset.
  • Import new tilesets (remember new tilesets needs to have a width of 320 and a height divideable by 32)
  • Build and run your maps to test them in-game

Main things which will come in the next release:

  • Adding events, npcs and teleporters
  • Changing names of maps and tilesets

A short tutorial to get you started:

  1. Double-Click ARCEngine.jar to start it.

  2. Click the red rectangle that says “Toggle Menu”. A small menu should now open in your top left corner.

  3. Click Load Map (there are a few pre-defined maps) and select a map of your choice (doesn’t matter)

  4. Now the cell-editor should have opened up properly.
    The left panel is the tileset where you can select tiles. You also drag to select multiple tiles in any direction.
    The right panel is your map. Once you’ve selected some tiles, click on this panel to paint them out. Where you click is where the top left corner of your selected tiles will be painted.

  5. Once you’re happy editing your map, click Save Map on the small menu that you opened earlier.

  6. Now click on the project tab. Click on the button which says “Change” and select the map you edited. Make sure the text left of the button says “map.” + the name of the map you edited.

  7. Now click Build Project. Wait a few seconds. A new directory called “build” should appear in the same folder as ARCEngine.jar. Inside the build folder should a file named Testbuild.jar be located. Double-click it and it should launch the game.

Controls for the game:
Arrow keys - Controls your character and menus.
Z - The action key, currently only used in menus.

Also, take a look at the following image:

http://www.trololol.se/arc4.png

Those are four buttons that are clickable. The first three (white, green and blue) controls which layer you are currently painting tiles to. The last red one toggles the small menu.

DOWNLOAD LINK

When you report a bug please state your OS as well.

Very nice. A few comments. The controls are very responsive and intuitive. It would be nice to have a graphic that highlights the tile that will be affected when you place a new tile. Also, an undo option would be nice to remove misplaced tiles instead of having to remap.

Good work. Can’t wait to see how this progresses.

Nice!
Tested it and it works well.

Beautiful graphics.

Thanks :slight_smile:
To highlight all affected tiles would be useful and should be pretty easy to implement. Might come in the next update :slight_smile:
An undo feature would also be extremely useful, the only problem is that I have no clue on how to implement something like that. If someone could help me with this it would be great.
Thanks again :slight_smile:

Thanks, glad you liked it. :smiley:

just a guess, you could have a saved state of what it used to be, and wheneve ryou do something u overwrite it, and if you undo, u jump back to that.

this is probably a horrible idea, but it is just the first guess that comes to mind ;).

In the past I’ve created a map editor with undo/redo, using the standard UndoManager found in the JDK, and custom AbstractUndoableEdit subclasses for each thing the user can do (edit a single tile, flood fill, delete, etc.). Works like a charm and pretty easy to do - don’t have to re-invent the wheel.

Thanks, I’ll have a look at it :slight_smile:

News:
I’ve made a few optimizations to the actual engine which means the game now runs much smoother (doesn’t affect the editor, just the games built with it).
I’ve added a shadow (pulsating from white to black) so you can easily see which tiles will be changed when you edit a map.
Started working on the event editor.

Next release might be ready in a week or so. :slight_smile:

Huh, I didn’t know about that class. Interesting. I’ve always just used an undo and a redo stack.

Made some more optimizations to the engine. Time taken to render a frame is halved :slight_smile:

tested it , works awesome :wink: i know that the engine is still in beta but check this out >
http://lilcookiewithmilk.deviantart.com/art/Pokemon-FR-E-world-spritesheet-187179906?q=in%3Adigitalart%2Fpixelart+sort%3Atime&qo=2
well?

Glad you liked it :slight_smile:

Not sure what you mean with the pokemon spritesheet, could you explain please? :wink: