I am an indie developer who is working on a number of game engines and game ideas, notably in the Java language. My primary focus is in creating an "RPG Maker" in Java, with separate editor, engine, and platform infrastructure that is extensible. These will be released as open-source projects, with as-yet-undetermined licensing that should be (somewhat) permissive, while allowing game authors using such components to assert their own additional permissions for private game content, as possible.

RSS feed My Blogs

This post is a collection of my thoughts on scripting in a Java-based engine.

In researching ways and means of extending an application, as mentioned in my premiere post in this blog, I've mentioned that both editor and engine should be extensible. To wit, this includes creating a Service-Provider Interface of sorts, that can be used by other programmers. But, the opposite side of the coin is in scripting of several aspects of game logic.

I admit first that I'm no expert in any of this; and where I could in any way speak with authority in this regard, is where I've done a little research of what's possible. Thus far, I believe there are different aspects of scripting solutions: one is in using something built-into the JDK (like Rhino or Nashorn extensibility), or by third-party scripting solutions.

Another "complication", if you will, of scripting is in the scripting structure, and in variable and method access between application and script, and even if scripts can access other scripts. Now, I know that Lua scripts can require (depend upon) other scripts; but I don't know if that goes the other way as well, if scripts can require any specific API from the application....

Do any object-oriented scripting languages exist, which have class-based structures and which are not Ruby? Enterbrain has already used Ruby for their previous RPG Maker titles, which I'm a little leery of using, in fear of being called merely another RM-imitation, instead of something unique. (Though the recent RPG Maker MV is going the way of Javascript to allow web-games and cross-platform compatibility.)

Types of scripting solutions to check later: Javascript, Lua, Python, Ruby, maybe a few others. Of those, I'm most familiar with both Javascript and Lua; the luaj project appears to be a decent runtime library, although I'm not sure of how per-game-tick time costs can be evaluated in either case.

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Level
56%
Gamer
7
Avatar
Avatar
Status
Last Online
Country
United States United States
Gender
Male
Friends
Become friends
Member watch
Start tracking
Statistics
Rank
16,910 of 580,289
Visitors
921 (1 today)
Time Online
4 days
Activity Points
165
Comments
21
Site visits
871
Contact
Contact
Send Message