Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Multi Player Split Screen with SDK

luis

Member

Multi-Player Split-Screen with SDK           
V4.2        

I stopped working on this.. i can't continue, i don't have the experience and the RGGS Knowledge... so thanks all for everything, hope you can use my code to make a new improved version! now its yours... i have new goals and my life has change, i have never been too good to script, and making games with this tool never worked for me.. so good bye everyone.. Luis.

     
Introduction
  This script is a large tool that enables a second player in your game, so that means you can play with your friends in one computer, or course with a split-screen, for me this is better that a netplay script, because is better for playing with relatives, or friends, and is more easy-to-use, also many options, where you can
I have delayed the released of the ABS version, and some other things, because of some problems i'm having!(PM for anything related to this)

New Things and Features
    -Now under Creative Commons
    -SDK update(2.3) with RSC require!
    -AIM update(2.02)
    -Passability for Player2 is fixed! :D
    -Change Default Controls
    -6 New Interpreter Commands
    -Change the number of players in-game * See Interpreter Commands       
    -See txt file with a list of all the bugs fixed

Next Versions Features
    -Mr. Mo's ABS compatibility (Delayed)
    -Menu for player 2(Delayed)
    -Option to make diferent parties(Delayed)
    -Test Script with other(i will post compatibles scripts on forum)
    -Battle mode(Delayed)   
    -Player 2 Message Window(delayed)
    -4 Players Game

Script
  I cannot post this script, because its too large, but you can easely copy from the demo.

ScreenShots
http://www.imageno.com/thumbs/20080131/kq5ghngakfie.jpg[/img]http://www.imageno.com/thumbs/20080131/6rx7gwearw3j.jpg[/img] http://www.imageno.com/thumbs/20080131/tsfcsjn9g8po.jpg[/img]

Demo

Contact
Feel free to PM me, but if you want me to answer quickly please post the question here in this forum!

Thanks to all the comunity!

Luis.
 
Pretty cool!

But I can see room for improvement, such as making it that when Player 1 or 2 tries to move off the screen, they are not allowed until the other player also tries to move away from the screen in that direction.
Also, I'd LOVE to see Split-screen.
 

Zoom

Member

Soon as someone makes the split screen feature, you can bet that not long after there will be ToeJam and Earl games. If nothing else, I'd like to see the tilesets for those games, so a big thumbs up to your script!
 
Nice work, its always good to see people creating new scripts..

I see many things off with this (not trying sound harsh, but a list of things you should do to improve your script)

0) Not really a problem but I hate seeing non-indented code (one of my pet peeves, other programmers may be using your code and its a proper convention to indent your code) Also you should disable smileys since I see a few of them in the code

1) The problem Draken mentioned

2) Why a Game_Player2 class? you could have easily just edit the original Game_Player to get the same effect (add a variale to check if its Player 1 or Player 2)

3) There is a bug in this code block with the Game_Player2 class (bolded line)
Code:
[B]if Input.trigger?(Input::C)[/B]
# Same position and front event determinant
check_event_trigger_here([0])
check_event_trigger_there([0,1,2])
end

The bug is that both player1 and player2 can push the same button to activate events

4)In your class Spriteset_Map a couple of your variables are spaced out for example this line
Code:
@character_sprites.push(Sprite_Character.new([B]@view port1[/B], $game_player))

5) Condense your code try aliasing a few of the methods you edited (if possible) If you didn't make any changes to a method leave it out doing so will increase compatibility with other scripts

6)
Code:
def command_new_game
# Play decision SE
$game_system.se_play($data_system.decision_se)
# Stop BGM
Audio.bgm_stop
# Reset frame count for measuring play time
Graphics.frame_count = 0
# Make each type of game object
$game_temp = Game_Temp.new
$game_system = Game_System.new
$game_switches = Game_Switches.new
$game_variables = Game_Variables.new
$game_self_switches = Game_SelfSwitches.new
$game_screen = Game_Screen.new
$game_actors = Game_Actors.new
$game_party = Game_Party.new
$game_troop = Game_Troop.new
$game_map = Game_Map.new
$game_player = Game_Player.new
[B]$game_player2 = Game_Player2.new[/B]
# Set up initial party
$game_party.setup_starting_members
# Set up initial map position
$game_map.setup($data_system.start_map_id)
# Move player to initial position
[B]$game_player.moveto($data_system.start_x, $data_system.start_y)
$game_player2.moveto($data_system.start_x, $data_system.start_y)[/B]
# Refresh player
$game_player.refresh
$game_player2.refresh
# Run automatic change for BGM and BGS set with map
$game_map.autoplay
# Update map (run parallel process event)
$game_map.update
# Switch to map screen
$scene = Scene_Map.new
end

a) first bolded lines refer to 2)
b) You are starting both the players on the same tile that should be changed

7) This is more cosmetic you see this line in method battle_test
Code:
$game_player = Game_Player.new

8)
Code:
def transfer_player
# Clear player place move call flag
$game_temp.player_transferring = false
# If move destination is different than current map
if $game_map.map_id != $game_temp.player_new_map_id
# Set up a new map
$game_map.setup($game_temp.player_new_map_id)
end
# Set up player position
[B]$game_player.moveto($game_temp.player_new_x, $game_temp.player_new_y)
$game_player2.moveto($game_temp.player_new_x, $game_temp.player_new_y)[/B]
# Set player direction
case $game_temp.player_new_direction
when 2 # down
$game_player.turn_down
$game_player2.turn_down
when 4 # left
$game_player.turn_left
$game_player2.turn_left
when 6 # right
$game_player.turn_right
$game_player2.turn_right
when 8 # up
$game_player.turn_up
$game_player2.turn_up
end
# Straighten player position
$game_player.straighten
$game_player2.straighten
# Update map (run parallel process event)
$game_map.update
# Remake sprite set
@spriteset.dispose
@spriteset = Spriteset_Map.new
# If processing transition
if $game_temp.transition_processing
# Clear transition processing flag
$game_temp.transition_processing = false
# Execute transition
Graphics.transition(20)
end
# Run automatic change for BGM and BGS set on the map
$game_map.autoplay
# Frame reset
Graphics.frame_reset
# Update input information
Input.update
end
end

see 6b) sharing the variables used in this method among the two players isn't a good idea

9) in a few of the methods in Scene_Map you missed a couple of lines
$game_playerr.straighten this method straightens the player (sets the frame of the animation to the first frame of the direction)

10) The interpreter class must also be edited so you can use event commands on Player 2

A nice first try, I await further improvements to your script, since allowing for two player games would be cool
 
so....the 2p can talk to events and crap? XD

-EDIT-
2p can talk to events! :P Enter is is umm well enter command. :D Oh and Trickster, Why dont you help him, make a team and help him on the script. That way it will get done faster, make it compatible with ABS!!!
 
If only I had the time, I would help more, but well my post was very informative pointing out bugs and things that need to do before the script is complete.
 

arev

Sponsor

I remember some german event script for two players but it'd be a lot easier this way. also, check my siggy for "2 player action game" ;p
 
:D I cant wait till this script is compatible with abs and split screen. I have a fun game in mind ^_^ Keep up the good work luis, oh and dont quit like that other guy making the multiplayer script. Although he had the split screen. He had more errors....You should look at the split screen thing by the other guy and look at it. Add me to msn Game_Maker06@hotmail.com, ill give you the script. :D
 
Dillydally said:
:D I cant wait till this script is compatible with abs and split screen. I have a fun game in mind ^_^ Keep up the good work luis, oh and dont quit like that other guy making the multiplayer script. Although he had the split screen. He had more errors....You should look at the split screen thing by the other guy and look at it. Add me to msn Game_Maker06@hotmail.com, ill give you the script. :D
Not as good as the MMORPG script that i have but good

Mmorpg script has:
-Login
-Server Select
-Register
-Up To 150 People on each server
-Chat
 

arev

Sponsor

so what? do you honestly belive someone will ever release a game so many people will want to play at once? I don't. someone said couple of days ago that the netplay script should be used form making games like chess, and I agree. there are better programs for mmorpgs than rmxp. that's why this multiplayer script is something worth attention :)
 
i agree sensai trickster..... anyways..... what does a 2 player script have to do with an online script? People dont want to make an online game with all the complications just so you can play 2 player.....some people want a 2 player script to play with a friend or relative. It would be way cooler than the netplay script :P
 
Cool script!
You should have an option where if one player goes too far away from another, the camera zooms out enough to show them both. I dunno, just a thing I'd like to see...Well, happy scripting! And this is really nice...
 
dude, this is awesome ^_^ i hope you continue at it. well, this is goin in my favorites on my laptop

edit: if any1 can send me a demo of this (the one here doesnt work) itll be appreciated. pm plz ^_^
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top