Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[EO XMAS] Simple startup cutscene/story.


Broojo02
 Share

Recommended Posts

Difficulty: 1/5

This is hardly one to be in the source section as it only changes 2 lines of code, the rest is mainly graphics and tile placing.

This tut is a bit of a cop out, it creates a storyline of images that can be progressed through by pressing the right arrow key, what you are looking at is simply a map without you in it (or so it seems).

Step 1: Change the startup position.

Unlike most of the other engines, EO doesn't let you change the start map, x and y easily inside the usual classes.ini file however its very easy to change them yourself.

Simply open up the _server.vbp_ file and do a search for:
```
Public Const START_X As Integer = 5
```Go ahead and change the 5 to a 0.

Do this as well for the:
```
Public Const START_Y As Integer = 5
```
You have now changed the game so that a new player will start off his/her game in the very top left corner of map 1 :).

Step 2: Find your cutscene images.

In my cutscene I used small graphics with text underneath them, surrounded by black. I find this works best for storylines.

The largest image you can display on your map (assuming you haven't enlarged the picscreen) is 480 x 384\.

You will also need a small graphic saying "Press →" or "Press right", it doesn't have to be small but you don't want it to block up your lovely cutscene.

Step 3: Add the graphics to your game folder.

In your tilesets folder add a new tileset (copy and paste an existing one) and name it 4.bmp. Open up the bitmap and press CTRL +E, change the width to 256 and the height to a large value such as 2000.

Now add the graphics you have collected to your new bitmap image by copying and pasting them into the file. If the picture is wider than 256 pixels you will have to split it in half (or more) to make it fit in the tilesheet. Make sure you add in your "Press right" graphic as well.

Step 4: Making it all work.

Now for the harder stuff, to get this cutscene to work by simply pressing the right arrow key you have to be a little bit sneaky and creative with your tile attributes. Sure you could add more code and make a more complicated cutscene system but this works just fine.

Log into the game and warp to map 1, open up the map editor ("/editmap"). Now place your first graphic in your cutscene somewhere in the middle of your map, it can be on any layer. Then add the "Press right" tiles to your map (put it somewhere discrete yet visible). Next, add the following attributes and tiles to the map in this way:

#Add 1 block tile directly below the top left tile.
#Add one warp tile directly to the right of the top left tile (it should warp to map 2 coords (0,0))
#Add 2 fringe tiles over the top over the top left and warp tile (they should be your background colour so they blend in, I used black).

Something like this:
![](http://img84.imageshack.us/img84/1636/screenshiti.png)

So now warp to map 2 and do the same thing with your next graphic only this time its slightly different:

#Add 2 block tiles, one directly below the top left and one to the right of that tile
#Add one warp tile 2 tiles to the right of the top left tile (it should warp to map 3 coords (0,0)
#Add three fringe tiles over the first three tiles in the top left row (make sure they blend in).

![](http://img690.imageshack.us/img690/1564/screenshot2vq.png)

You may be thinking why I made the second map have more steps to travel to the warp tile. This is because EO is so damn fast at warping that if you have a warp tile right next to where you just warped from, chances are once you've warped you're still holding down the right key and you go forward a few maps inadvertently (like 3). The extra tile helps stagger things.

Repeat the last process for all the subsequent maps, increasing the map number you are warping to by 1 each time until your last picture which should instead warp you to the starting zone of your game.

Step 5: Add music

Get some nice opening music from www.vgmusic.com, put it in your music folder and set all of the maps to that music track (alternatively you can have the track change with each picture).

Tips/Notes:
To make your storylines even more uber cool, add animations and even NPCs to your map, you could practically choreograph your own moving scene.
You might want to add block tiles to the 2,3,4 etc maps at the top left as the player could technically walk to the left if he/she was feeling rebellious.

That should be it! I'll try and optimise this thread as much as possible.
Link to comment
Share on other sites

Yep I did think of that  :cry: but my experience with these games is that you can technically stay on top of people until you move off of them, as long as they press the right arrow key they should just pop off of the player and onto the warp tile with no problem. Then again that relies on you being able to walk onto the second tile on maps 2,3,4 etc with no problem after you warp because of the fast warp issue.

I might change it so there are block tiles on maps 2,3,4 in the top left corner, that might fix the problem and "force" the player to walk on top of another player without warping on top.

If not I will have to make some special multiple person tiles :P

EDIT: Ahh, its ok if the person is in the top left tile, you can walk over them fine after walking, but if they are on the tile next to that you cant walk further :( At least thats what happens with NPCs.
Link to comment
Share on other sites

Ok, a quick way to fix it would be to simply comment out this for statement in modGameLogic
```
    For I = 1 To MAX_PLAYERS
        If IsPlaying(I) And GetPlayerMap(I) = GetPlayerMap(MyIndex) Then
            If GetPlayerX(I) = X Then
                If GetPlayerY(I) = y Then
                    CheckDirection = True
                    Exit Function
                End If
            End If
        End If
    Next I
```
However a better way would be to use a check for a certain tile that will allow player on player movement. For instance we could use the defunct slide tile:
```
    For I = 1 To MAX_PLAYERS
        If IsPlaying(I) And GetPlayerMap(I) = GetPlayerMap(MyIndex) Then
            If GetPlayerX(I) = X Then
                If GetPlayerY(I) = y Then
                    If Map.Tile(X, y).Type = TILE_TYPE_SLIDE
                    Else
                    CheckDirection = True
                    Exit Function
                    End If
                End If
            End If
        End If
    Next I
```
Link to comment
Share on other sites

  • 2 weeks later...
Nice job on this. We have used this type of trick for years in Ambardia and no one has ever complained about talking or anything while on the map.

We also used a progress bar in our tutorial area where each map had diffrent progress to it.
Link to comment
Share on other sites

  • 1 month later...
Your little flaw is an easy fix,

Just make the players warp in the same location and if they move left or right make it warp them back, this way no matter what when they warp they would all "STACK" on the same tile, and could not block each other.

example Map one top corner

S = Player
F = Warp to next page
P = Warp to previous page
B= Blocks

Start up
| S | F |
| B | B |

Other Pages
| P | S | F |
| B | B | B |
Link to comment
Share on other sites

  • 2 weeks later...
@RyokuHasu:

> OH XD that what that is… lol

I lolled when I saw your post, Good job the basic cut scene tutorial, although for a true cut scene you could use an animated picture to cover the picscreen until the animation is done, Then you could disable it's visibility. However for a basic cut scene this was thought out very well.
    Yours truly,
        Ice
Link to comment
Share on other sites

  • 2 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...