A Simple Scripted Game

Member
Posts: 201
Joined: 2002.06
Post: #1
I have always wanted to create a simple engine with scripting capabilities that basically handle different interactions of several sprites on screen and give them different behaviors. This is game development at its most basic concepts.

With an engine like this a simple game could be created that consists of, for example, one sprite controlled by the player and several other sprites that can function as one of the following: enemies, allies, neutral units, or power-ups. Each type functions differently and is visually distinct so that the player can tell the difference. For example, one type of enemy could always try to circle the player to confuse him. One type of ally could always go after one type of enemy, or vice versa. Power-ups can be scripted to avoid all other sprites as much as possible to make them harder to pick up. Some units could be programed simply to closely follow other units, thus creating collisions (that can be manipulated by players' movements to make them hit enemies). When two units collide, different things can happen depending on what type of unit it is.

Another idea could be to make a point-and-click real-time strategy game involving basic units and resources. The difference could be that the enemy team is not centrally controlled, but is merely sent out to follow each unit's free will. Really the main difference between this and the first game would be that action would be slowed down and the player can control more than one unit at once.

A whole set of mini-games could be created by making new scripts and possible some different graphics (although the sprites could be represented merely as different colored shapes).

What sorts of behaviors would be interesting to see in mini-games like this? What other types of mini-games could be made?
Quote this message in a reply
Quicksilver
Unregistered
 
Post: #2
How about a game similar to pocket tanks.
Quote this message in a reply
Member
Posts: 201
Joined: 2002.06
Post: #3
Come to think of it, this could function as a 2D action game development environment. Make a bunch of sprites, give them behaviors with scripts, and set up some winning criteria, and you've made a game.

Input could be easily handled by basic scripts assigned to each key, mouse click, and mouse movement.

Different behaviors could be handled as separate scripts, plus a default script for when there are no triggered "events" pertaining to that sprite. Different scripts can call each other as functions so that more complex behavior can be created. Simple things, such as physics, can be incorporated directly into the environment and different aspects of these things can be toggled on and off.

Sprite scripts could even have the ability to spawn new sprites to make a simple particle system, each particle controlled as a sprite and with a decay rate assigned to them and everything.

Scripts can also be made to control the whole environment, deciding game states and the like.

Graphics and sound can be created in any way possible and simply imported and saved into an archive used by the game. Levels could be created by using sprites to represent both tiles and interactive parts. This can be powerful. For example, if you are making a game in which characters walk around, you can have a road tile and a rock tile. When the character is on rock a script modifies his walking speed to make it slower than if he is on road.

This would make a great environment for action games, a great diversion from RPG-making environments.
Quote this message in a reply
Member
Posts: 328
Joined: 2002.04
Post: #4
Sounds like an advanced version of the Snake Quest engine, GF :-) The difference is that what you described should have better collision detection than simple tiles, and some things like particle effects would probably be easier in your theoretical environment, but it has been done with Snake Quest. We've even had people use the two-player snake controls as inputs for the single player, effectively executing scripts on a button-press.

Ededed has done some remarkable things with the scripting system, as has "our" user, Don Joe, who has made some of the best SQ level sets ever created.

Just an observation Grin
Quote this message in a reply
Member
Posts: 201
Joined: 2002.06
Post: #5
That's why I said tiles should be treated as sprites, for advanced collision detection.
Quote this message in a reply
AJ Infinity
Unregistered
 
Post: #6
Still interested in making this, geezusfreek? How bout a visually oriented, drag n drop, easy to code, scripting system in the style of RCX Code (the program used to program Lego robots). Give it a polished aqua UI and do it in Cocoa Java and then I'll most likely help.

/ / AJ Loves the idea / /

even better: use RealBasic. ColdStone was done with RealBasic. The Green Machine was done with RealBasic.
Quote this message in a reply
Moderator
Posts: 130
Joined: 2002.04
Post: #7
The Green Machine is slow as hell, and Coldstone aint that fast either and still Coldstones engine is C/C++. It shutters on a g3 300 mhz even tought it uses not so advanced 2d...
But if you make the engine in a faster language then RealBasic its good, but making it fully in RealBasic is a bad idea.

"Gameplay Uber Alles. And if you can make it psychedelic too, great!" - Jeff Minter
Quote this message in a reply
Member
Posts: 201
Joined: 2002.06
Post: #8
I never intended to make it. It was just something to think about. I was thinking a bit higher level scripting though, like instead of manually doing a bunch of collision math and stuff, the collision detection is done as an event triggered when two sprites collide. Maybe even a scalable physics engine built right in, etc.
Quote this message in a reply
Member
Posts: 156
Joined: 2002.11
Post: #9
Yeah, you could cash out $1,200 on Macromedia Director, but I don't recommend it...

Time is running out!
Quote this message in a reply
Member
Posts: 177
Joined: 2002.08
Post: #10
This sort of high-level scripting (objects are created, configure basic building blocks, and act on callbacks from the native simulator code) is basically what I have in mind for S2 Grin
Quote this message in a reply
AJ Infinity
Unregistered
 
Post: #11
Quote:Originally posted by ERaZer
The Green Machine is slow as hell, and Coldstone aint that fast either and still Coldstones engine is C/C++. It shutters on a g3 300 mhz even tought it uses not so advanced 2d...
But if you make the engine in a faster language then RealBasic its good, but making it fully in RealBasic is a bad idea.


According to ColdStone's splach screen, it's "Made with RealBasic. I've heard about the Green Machine being slow. (I've also seen how slow RB is)
Quote this message in a reply
Moderator
Posts: 130
Joined: 2002.04
Post: #12
Yeah, the whole Coldstone IDE is made in realbasic. The engine however is made in C/C++.

"Gameplay Uber Alles. And if you can make it psychedelic too, great!" - Jeff Minter
Quote this message in a reply
ededed
Unregistered
 
Post: #13
drag n drop NONONO!
I think it should be python because that looks easy.

It would not exactly be like SQ because if it was then you would have a drag n drop scripting language which should be avoided at all costs. But it would be as extendable as SQ except not grid based.
There should be a console that lets you enter or test commands and scripts in the game.

I made a nice java thing a long time ago, it reminds me of this. You could drop as many bombs as you wanted anywhere then set any off. They would take a short amount of time and you could get nice chain reactions. I image this type of thing an the kind of things seen in SQ as well. Another nice thing would be to have a flammable image so someone could drop petrol and then set off an explosion and the some sort of fill algorithm would fill the petrol area with fire then cause things nearby to burn.
Quote this message in a reply
Member
Posts: 201
Joined: 2002.06
Post: #14
You've got the idea ededed.
Quote this message in a reply
w_reade
Unregistered
 
Post: #15
Do have a look at OSC's Lua Smiley Tag code. It'll seem a little bit confusing at first, and then you'll suddenly start getting very excited indeed, if you've never actually done anything with scripting before. It's an education Wink.
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  Simple Network Game jpiabrantes 0 1,060 May 2, 2014 04:06 AM
Last Post: jpiabrantes
  Simple Arcade game ideas problem steve7946 5 6,252 Feb 19, 2005 12:05 PM
Last Post: steve7946
  Arcade/simple game ideas request aarku 57 20,136 Aug 15, 2003 10:54 AM
Last Post: igame3d