vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3 Articles (https://vborg.vbsupport.ru/forumdisplay.php?f=187)
-   -   v3 Arcade - Game Modification Guide & Releases (https://vborg.vbsupport.ru/showthread.php?t=60666)

John 01-23-2004 10:00 PM

v3 Arcade - Game Modification Guide & Releases
 
How v3 Games Work

v3 Arcade games are a little different to those in the original Arcade and futureal's proArcade.

Instead of a simple getURL which sends all of the variables to the next page, the v3 Arcade uses a completely different system - a series of sendAndLoad events where data is sent and received between the Flash file and vBulletin. As a result, converting games for the v3 Arcade is a little more complicated.

To get games working with the v3 Arcade, a piece of code needs to be inserted which will run on every frame of the Flash movie. (I.e. one looped movieclip which is active across all frames.) A variable also needs to be set to tell the v3 Arcade code when to end the game.

EDIT: INSTRUCTIONS UPDATED TO MAKE THE PROCESS A LOT EASIER!

Converting Games

Converting a game is quite simple, providing you have some basic knowledge of Flash.

Step 1.
Create a blank movie clip, containing two keyframes.

Step 2.
On frame 1 of this blank movieclip, insert this code (not forgetting to change the gamename value to something unique - THIS PRESUMES THAT _root.score CONTAINS THE SCORE VALUE!):
Code:

// HERE THE ARCADE SESSION IS INITIATED
// DON'T FORGET TO CHANGE THE GAMENAME VALUE!
if (this.sessionstarted != 1) {
    this.arcade = new LoadVars();
    this.sessionvars = new LoadVars();
    this.arcade.gamename = "towerball";
    this.arcade.sessdo = "sessionstart";
    this.arcade.sendAndLoad("arcade.php", sessionvars, "POST");
    this.sessionstarted = 1;
}

// IF GAMEOVER=1, SUBMIT THE SCORE AND REDIRECT THE PAGE
if (_root.gameover == 1) {
    if ((this.askpermission != 1) && (this.sessionvars.connStatus == 1)) {
        this.prequestvars = new LoadVars();
        this.pranswer = new LoadVars();
        this.prequestvars.gametime = this.sessionvars.gametime;
        this.prequestvars.fakekey = this.sessionvars.initbar;
        if (_root.score == 0) {
            this.prequestvars.score = -1;
        } else {
            this.prequestvars.score = _root.score;
        }
        this.prequestvars.id = this.sessionvars.lastid;
        this.prequestvars.sessdo = "permrequest";
        this.prequestvars.note = (this.prequestvars.id*this.prequestvars.score*this.prequestvars.fakekey);
        this.prequestvars.sendAndLoad("./arcade.php", this.pranswer, "POST");
        this.askpermission = 1;
    }
    if ((this.pranswer.validate == 1) && (this.finalsent != 1)) {
        this.burnscore = new LoadVars();
        this.burnscore.microone = this.pranswer.microone;
        this.burnscore.gametime = this.prequestvars.gametime;
        this.burnscore.id = this.prequestvars.id;
        if (_root.score == 0) {
            this.burnscore.noscore = 1;
        }
        this.burnscore.sessdo = "burn";
        this.burnscore.send("./arcade.php", "_self", "POST");
        this.finalsent = 1;
    }
}

Step 3.
Now, you need to let the game know when to finish the game and redirect the page. This is done by the setting of a new variable, "gameover". When _root.gameover==1, the game will end.

Find the frame of the "Game Over" page, and add this actionscript to the frame:
Code:

_root.gameover=1;
Save, and export the SWF movie to the appropriate place. :)

Releasing Games

When releasing a game, please try to stick to the same format as the other games provided below. (I.e. with the installation script.) It should be fairly easy to figure out what goes where. :) Try to release all games in this thread!


Additional Games So Far

? Pacman (by Paul Neave) - https://vborg.vbsupport.ru/showpost....&postcount=102
? Simon (by Paul Neave) - https://vborg.vbsupport.ru/showpost....&postcount=130
? Breakout - https://vborg.vbsupport.ru/showpost....&postcount=350
? Target - https://vborg.vbsupport.ru/showpost....&postcount=359
? Maeda Path - https://vborg.vbsupport.ru/showpost....&postcount=469
? Helicopter - https://vborg.vbsupport.ru/showpost....&postcount=504
? Curveball - https://vborg.vbsupport.ru/showpost....&postcount=506
? Miniclip Snake - https://vborg.vbsupport.ru/showpost....&postcount=537
? Towerball - https://vborg.vbsupport.ru/showpost....39&postcount=7
? Alien Clones - https://vborg.vbsupport.ru/showpost....3&postcount=12
? Penguin Bashing - https://vborg.vbsupport.ru/showpost....9&postcount=72
? Mars Rover - https://vborg.vbsupport.ru/showpost....&postcount=109
? Disco Racer - https://vborg.vbsupport.ru/showpost....&postcount=138
? Joust - https://vborg.vbsupport.ru/showpost....&postcount=144
? Hexxagon - https://vborg.vbsupport.ru/showpost....&postcount=938
? Monkey Lander - http://www.v3arcade.com/play/showthread.php?t=55
? Pingu Slap - http://www.v3arcade.com/play/showthread.php?t=53
? Bloody Pingu - https://vborg.vbsupport.ru/showpost....&postcount=295
? Radial Snake - https://vborg.vbsupport.ru/showpost....&postcount=300
? Kill Kenny - https://vborg.vbsupport.ru/showpost....&postcount=304
? Alien Attack - https://vborg.vbsupport.ru/showpost....&postcount=314
? Ron North's Jewels - https://vborg.vbsupport.ru/showpost....&postcount=329
? KickUps - https://vborg.vbsupport.ru/showpost....&postcount=363
? Altex - https://vborg.vbsupport.ru/showpost....&postcount=403
? Enemy Shooting - https://vborg.vbsupport.ru/showpost....&postcount=403
? Jail Break - https://vborg.vbsupport.ru/showpost....&postcount=403
? Snow Paul - https://vborg.vbsupport.ru/showpost....&postcount=403
? Space Hunter - https://vborg.vbsupport.ru/showpost....&postcount=403
? Plasmanaut on Fire - https://vborg.vbsupport.ru/showpost....&postcount=443
? Simpsons Shooter - https://vborg.vbsupport.ru/showpost....&postcount=447
? Plasmanout V2 - https://vborg.vbsupport.ru/showpost....&postcount=464
? Pinball - http://www.v3arcade.com/play/showthread.php?t=182
? Juggler - http://www.v3arcade.com/play/showthread.php?t=207
? Starship Legend - http://www.v3arcade.com/play/showthread.php?t=208
? Aim & Fire - http://www.v3arcade.com/play/showthread.php?t=206
? Plops - http://www.v3arcade.com/play/showthread.php?t=184
? Tie Fighter Shooter - https://vborg.vbsupport.ru/attachmen...chmentid=17650
? Witch Hunt - https://vborg.vbsupport.ru/attachmen...chmentid=17651

MindTrix 01-24-2004 11:56 AM

Cheers for the guide :)

KevinUK 01-24-2004 01:18 PM

John,

Neave's PacMan doesn't open in Flash - I get "unexpected file format" (even though it's .fla).

Kevin

NuclioN 01-24-2004 01:38 PM

The format is flash MX when it won't open with flash 5. You need to install flash MX to open it.

NuclioN 01-24-2004 01:43 PM

Quote:

The easiest way of doing this is to drag the new movieclip onto the last frame which the game will end on. (I.e. the game over screen.) An alternative is to create a new scene, and name it "Submit". On frame 1, include your new movieclip. In the main game, find the code which signifies the end of a game - and add:
Code:
gotoAndStop("Submit",1);
Is it possible (i shall test it also) to add an extra frame on the end of the game with a stopframe in it. On this frame is not a movieclip but a frameaction that is called when you add in the gameover section: GotoAndStop frame **. where the script is executed?

John 01-24-2004 02:07 PM

Quote:

Originally Posted by NuclioN
Is it possible (i shall test it also) to add an extra frame on the end of the game with a stopframe in it. On this frame is not a movieclip but a frameaction that is called when you add in the gameover section: GotoAndStop frame **. where the script is executed?

You can do whatever you like, as long as the first part of the code is at the beginning and the looping step 2 appears at the end of the game.

Dark Jim 01-24-2004 06:33 PM

Thanks for the game NuclioN, it's great. Could you convert some of the games that are in the vBProArcade games thread too?

BillaBongUSA 01-24-2004 06:39 PM

Thanks for the tutorial, John. I think I'll go through the other thread and try to convert some games that people have requested.

Littlebit 01-24-2004 06:46 PM

Hey John,
Why did the sound volumes get weird with curveball?

John 01-24-2004 06:48 PM

Quote:

Originally Posted by Littlebit
Hey John,
Why did the sound volumes get weird with curveball?

No idea, but they did. I can't afford to spend all day trying to fix them. :(


All times are GMT. The time now is 01:36 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01618 seconds
  • Memory Usage 1,784KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_code_printable
  • (3)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (3)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete