Basic Tutorial for adventure game creation

Creating Games? Developing something for fun?

Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller

Post Reply
Inez
Posts: 2
Joined: Thu Apr 09, 2009 2:08 am
Location: Australia

Basic Tutorial for adventure game creation

Post by Inez » Thu Apr 09, 2009 2:26 am

I'm in the process of evaluating Revolution for the purposes of making adventure games. I'm comparing Revolution to Adventure Maker (cheap and easy to use but limited capacity and looks a bit amateurish), Unity (not quite so cheap but really powerful, really better suited to 3D games) and Director (bloody expensive and therefore out).

Can anybody point me towards a really basic walkthrough of the process of creating adventure games in Revolution? I've looked through all of the documentation and I can't find anything like this. I've had a bit of a play with Revolution but I really don't know what I'm doing, which makes evaluation a bit difficult.

Any help much appreciated.

Thanks
Inez :?

BvG
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 1236
Joined: Sat Apr 08, 2006 1:10 pm
Location: Zurich
Contact:

Post by BvG » Thu Apr 09, 2009 3:24 pm

Caveat: I think about games now and then, but never have done any real work in that direction.

Adventure games can be done in Rev easily, as long as it's "Myst"-style, and not "Lucas Arts"-style. Doing a game similar to "curse of monky island" would probably be possible, but in such a case the pro version of adventure maker would get you there more quickly (wild guess).

As for "Myst"-style, you'd best be off to use cards. stacks with some thousand cards can run slow, but you probably won't run into that. If you have a media license, there is a kind of automated builder app for this kind of game, but it's not very intuitive, so i'd suggest making your own.

Basically you would use a lot of code like this:

Code: Select all

on mouseUp
  go card "hallway"
end mouseUp
ideally you'd have a map or a list nearby, as to not get lost yourself in all the cards. Then all you'd need is great art, and the freehand polygon tool to create "hot spots" to click on for navigation.

Puzzles with drag and drop, image movement, sound, moving gears etc. (customary these days) would be harder, but maybe you can ask about that when you have a more specific problem?
Various teststacks and stuff:
http://bjoernke.com

Chat with other RunRev developers:
chat.freenode.net:6666 #livecode

Inez
Posts: 2
Joined: Thu Apr 09, 2009 2:08 am
Location: Australia

Post by Inez » Fri Apr 10, 2009 1:50 am

Thanks BvG,

I am trying to Myst style games, which is what Adventure Maker does. I know I need to use "cards", as these basically correlate to screens, but adventure games also require a number of other things. You need to be able to have animated gifs which play within hotspots; you need to use variables in order to programme the puzzles; you need to have conditional hotspots (i.e. a hotspot only becomes active when the relevant variables= 1 or 0); the ability to build "inventories"; and the ability to control what cursors appear over which hotspots.

I believe most of this can be done in Revolution, as this is the software which was used to port "Alida" from Apple to Windows, and that was a pretty good game, considering it was made by one person. In Adventure Maker these things are incredibly easy, although it all looks a bit amateurish. When I've been playing around with Revolution, I've worked out how to move from one card or screen to another, but that's as far as I've gotten.

What I need is a step-by-step list of basic instructions , together with a list of useful scripts (I am not a programmer, I'm an artist). The support and documentation for Revolution doesn't seem to be as thorough as that which is available for either Unity or Adventure Maker. I get the impression that the product is really aimed at people who know a bit about programming. That's where AM really shines, there is a really supportive community of people who are incredibly helpful, and the software is dead easy to use. It's just that it has limitations, and doesn't look particularly professional.

If anyone has done an adventue game in Revolution and could provide a walkthrough I would be incredibly grateful.

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9837
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Post by FourthWorld » Fri Apr 10, 2009 6:21 am

Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

BvG
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 1236
Joined: Sat Apr 08, 2006 1:10 pm
Location: Zurich
Contact:

Post by BvG » Fri Apr 10, 2009 12:43 pm

Inez wrote:What I need is a step-by-step list of basic instructions , together with a list of useful scripts (I am not a programmer, I'm an artist).
You are right, Rev is a general purpouse programming language/IDE. So having no programming knowledge can put a block on your project, until you have learned quite a few basics. Alternatively, did you consider teaming up with a programmer, or to outsource your programming need? There are rev coders that can easily do the coding stuff for you, if you are ready to pay a bit upfront and/or agree on revenue sharing.


Though it seems you do not really want to learn all this programmers stuff, here some hints regarding your specific tasks. If you're interested in learning rev programming, note that besides this forum, there's also a very busy mailing list, and for real time help, the chat i made (see signature).
Inez wrote:You need to be able to have animated gifs which play within hotspots; you need to use variables in order to programme the puzzles; you need to have conditional hotspots (i.e. a hotspot only becomes active when the relevant variables= 1 or 0); the ability to build "inventories"; and the ability to control what cursors appear over which hotspots.
Animated gifs are supported, but they do have several drawbacks, like lack of 8 bit transparency (no transparent colours), and a big hit on processing power. I suggest using several png images, and setting the icon of a button to those in predetermined intervals. Look up: icon, filename, import, send (using "in <time>")

variables are really bread and butter programmers things. Rev has several ways of passing data within itself, and storing it. to start out, i suggest concentrating on local and global variable declaration. basically you need to tell rev that a variable has to continue to exist beyond the current running handler. You can do this to put the line "global myVariableName" at any point of the script. Note that putting the line outside of a handler is also possible, and makes the declaration work for all handlers of the current script. look up: global, delete variable, local

for enabling or disabling stuff, again there's several methods. you could hide and show the relevant object, or use a conditional if-then-else structure. A simple example of such an if would be:

Code: Select all

global checkValidity
on mouseUp
  if checkValidity is true then
    go card "next step"
  else
    --you could just omit the else to do nothing, instead i warn the user here
    answer "you have no reason to go there now"
  end if
end mouseUp
inventories again from a programmers view are just stored in a variable. I suggest to seperate stuff with spaces, or with commas. that way you can use the "word" or "item" handling of rev to easily manage your inventory. however i guess you want to show the inventory items to the user. one way to do this would be to have a card with lots of buttons called "inventory" and then a number. here an example handler and how to make it work from a mouseUp:

Code: Select all

global myInventory
on mouseUp
  showInventory
end mouseUp

on showInventory
  --assuming each thing in the inventory is delimited with coma
  -- for example: "8 foot pole,knive,lantern,crank,fuzzy fibres"
  repeat with x = the number of buttons of card "inventory"
    if the number of items in myInventory < x then
    set the icon of button x of card "inventory" to the id of image (item x of myInventory) of card "allMyIventoryImages"
    else
      --no such inventory item, so if there was one previously you'd want to remove it
      set the icon of button x of card "inventory" to 0 --zero
    end if
  end repeat
  go card "inventory"
end showInventory
for changing the cursor on the fly, you'd need to use lock cursor, together with the messages for mouse position. Stuff to look up: mouseWithin, mouseEnter, mouseLeave, cursor, lockCursor
Various teststacks and stuff:
http://bjoernke.com

Chat with other RunRev developers:
chat.freenode.net:6666 #livecode

edljr
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 56
Joined: Sun Oct 26, 2008 6:47 am
Location: Tullahoma, Tennessee, United States
Contact:

Adventure Game Maker

Post by edljr » Mon Apr 13, 2009 6:04 pm

Inez,

If you are looking to collaborate, we can chat. I am a programmer, not an artist. If you want to chat about this, contact me off-list at edljr@mac.com.

Ed

Buttercup
Posts: 16
Joined: Fri Feb 24, 2006 7:14 am
Location: Sunny San Diego, California, USA

I've got some examples you might like...

Post by Buttercup » Sat May 09, 2009 1:39 am

Inez,

I've got an old set of example stacks that you can take apart if you'd like. Things like simple animation techniques, making a puzzle, character generation, navigation and inventory/item collection. They were created specifically for people who know nothing about programming (I myself know next to nothing). I also have some PDF instructional handouts along the same lines.

Email me at judylperry@gmail.com if you're interested and I will provide you a d/l link.

Judy

arlongz
Posts: 1
Joined: Wed Aug 26, 2009 4:44 pm

Post by arlongz » Thu Aug 27, 2009 3:32 pm

In Adventure Maker these things are abundantly easy, although it all looks a bit amateurish. When I've been arena about with Revolution, I've formed out how to move from one agenda or awning to another..



_________________
offshore staffing solutions

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9837
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Post by FourthWorld » Thu Aug 27, 2009 4:08 pm

There was a fella here who made an impressive game in Rev called "Gladiator Trials II", and he said he was considering making the engine open source.

If you search for "Gladiator Trials II" here you should be able to turn up more info. He did a swell job; his grid management system was very nicely done.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

Post Reply

Return to “Games”