Go Back   vb.org Archive > vBulletin Article Depository > Read An Article > vBulletin 3 Articles
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
v3 Arcade - Game Modification Guide & Releases
John's Avatar
John
Join Date: Mar 2002
Posts: 1,543

 

Norwich, UK
Show Printable Version Email this Page Subscription
John John is offline 01-23-2004, 10:00 PM

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
Reply With Quote
  #92  
Old 01-26-2004, 05:54 PM
Martyjp Martyjp is offline
 
Join Date: Nov 2001
Location: Norwich, UK
Posts: 62
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Is there a hack coming (or available) that prevents people with a certain amount of posts from playing in the Arcade. Since I have two current champions in the games (I have all the games from here) that don't contribute anything to the forums at all.
Is a hack needed? Set up a new usergroup and use promotions to promote people to that usergroup once they have made a certain amount of posts, then just set the permissions of the standard registered usergroup so that it cant play the arcade
Reply With Quote
  #93  
Old 01-26-2004, 06:08 PM
Hialls's Avatar
Hialls Hialls is offline
 
Join Date: Jul 2002
Location: Reading, England
Posts: 108
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Any chance anyone could release defend the castle?????
Reply With Quote
  #94  
Old 01-26-2004, 06:20 PM
vbmechanic vbmechanic is offline
 
Join Date: Jan 2004
Posts: 104
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Excellent hack, I've installed in on a few different sites and it works flawlessly.
Reply With Quote
  #95  
Old 01-26-2004, 06:44 PM
Oni no Densetsu's Avatar
Oni no Densetsu Oni no Densetsu is offline
 
Join Date: Apr 2003
Posts: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Martyjp
Is a hack needed? Set up a new usergroup and use promotions to promote people to that usergroup once they have made a certain amount of posts, then just set the permissions of the standard registered usergroup so that it cant play the arcade
Why? That's way too much work. I don't wanna manually promote people all the time, it's pointless. A simple hack (which is apparently already in the works) saves me the time of promoting people. Unless, what you're talking about is automated.
Reply With Quote
  #96  
Old 01-26-2004, 06:53 PM
Nam's Avatar
Nam Nam is offline
 
Join Date: Oct 2001
Location: NY
Posts: 206
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Oni no Densetsu
Why? That's way too much work. I don't wanna manually promote people all the time, it's pointless. A simple hack (which is apparently already in the works) saves me the time of promoting people. Unless, what you're talking about is automated.
It's automated, but I prefer to wait because it's coming soon anyway.
Reply With Quote
  #97  
Old 01-26-2004, 07:46 PM
Rampag33's Avatar
Rampag33 Rampag33 is offline
 
Join Date: Jun 2002
Location: Houston, Texas
Posts: 162
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Littlebit
Hey Rampage, here's one screen shot below.

I wanted to add a little something too after reading through the posts... I have a very small board with only some 7 or so, not so video game savvy people, who enjoy interacting with the arcade. I'm now starting to understand a little about MadCat's desperation to learn how to add a submit button to that one helicopter game after seeing the pages apon pages of crashing low scores developed at a rapid rate just with my little handful of users.
I do, however, also understand that beggars should never be choosers!....and I think that what (I think I read) you are working on in the way of pruning lowest scores in the future will remedy the issue all together. Just a little opinion to throw out.

I agree the Helicopter game and Bashing Penquins are the best examples of submit control. Especially the helicopter game. You can keep play for hours and then just submit the high score. Penquin doesn't remember your high score but atleast it still has the submit button.
Reply With Quote
  #98  
Old 01-26-2004, 08:52 PM
Oni no Densetsu's Avatar
Oni no Densetsu Oni no Densetsu is offline
 
Join Date: Apr 2003
Posts: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

How long does it take to convert a flash game to be playable in the vB3 arcade, out of curiousity?
Reply With Quote
  #99  
Old 01-26-2004, 09:19 PM
NuclioN's Avatar
NuclioN NuclioN is offline
 
Join Date: Aug 2002
Posts: 955
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I've seen multiple variations of catching the score in the sourcecode of the games and my guess is that this is an enormous barrier to produce games for this hack. It looks this requires advanced scripting skills.
Reply With Quote
  #100  
Old 01-26-2004, 09:37 PM
BillaBongUSA BillaBongUSA is offline
 
Join Date: Mar 2002
Posts: 103
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Flare
I'm having a bunch of requests for Flash Flash Revolution ... I can't find an FLA for it, does anyone happen to have a vbArcade version of FFR or something similar?
Well, in the past, Synthlight has always been very protective of the source of Flash Flash Revolution. I think the only way that we'd see FFR for v3Arcade is if someone sent him instructions on how to modify the .FLA and asked him to release it him to release it himself, but even that seems unlikely.
Reply With Quote
  #101  
Old 01-27-2004, 10:22 AM
Mellow's Avatar
Mellow Mellow is offline
 
Join Date: Nov 2003
Posts: 142
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

What do I need to modify the .swf files and add some games here and how much is the software? Is there a freebie editor? Thanks for the help from a newbie-soon-to-be-flasher.

Joe
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 03:16 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.09445 seconds
  • Memory Usage 2,346KB
  • Queries Executed 26 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (2)bbcode_code
  • (5)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_article
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (3)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.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
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete