Registrarse

[Engine] Ygopro

Estado
Cerrado para nuevas respuestas.


Thanks to Salvation & Buttys for this great source !

Goals of this Engine !
by Salvation Development

Salvation Development is a large scale social engineering non-profit project set out to tackle the 'wicked problem' of Yu-Gi-Oh! Online Simulators via enterprise level software design. To do so it employs a merit of interconnected support software based around the core support software of YGOPro, Invision Power Boards, and IRC written in JavaScript and SQL housed in this repository. The project addresses administrator megalomania, social stablity, competitive player group think, extremely high lack of public project oversight, developer negligence, funding, and automation.

Download Links
Updater: updater
XAMP: https://www.apachefriends.org/download.html
WAMP: WampServer, the web development platform on Windows - Apache, MySQL, PHP
vs2012: Download Microsoft Visual Studio Express 2012 for Windows Desktop from Official Microsoft Download Center
Premake4 : Downloads | Premake

Source Files:
Server Source: https://github.com/SalvationDevelopment/YGOCore
Client Source: https://github.com/Buttys/ygopro
OCG Core Source: https://github.com/Fluorohydride/ygopro

Premade:
Server: https://mega.co.nz/#!dYUCjKBR!A8pYh8jZJEOTfwYsoUFOhs2RaJFApJCi-SOOCCDwfis
Client: https://mega.co.nz/#!YY8EyDBY!g8YgDIeHuOHgsxDvKmTQ0Y3_IBLvVRdmZ_DESduCvwM

Your going to have to change Local Host to Your Server in the Client
Your going to have to build "Client Source" & Edit Local Host things to your server
"Client is Higher then Server" just ignore the message

How to Obtian the newest OcgCore.dll
Download Salvation from YGOPro Salvation Server Online Yu-Gi-Oh! Simulator Version 4.4.0
Install Salvation to a Folder
Go to the folder called : Ygopro
Look for : Ocgcore.dll
This should take care of the premade server & client if did right




How to set up the Server
Make sure the "Cards.cdb" is the same as your clients

Make sure your "iflist.conf" is the same as the clients

Make sure the "Script" Folder is the same as the clients

To run the server click on "YgoServer.exe"

The Game is Ran from Port 8911
-------------------------------------------
How to Set up the Client

Make sure the "Cards.cdb" is the same as the server

Make sure the "Iflist.conf" is the same as the server

Make sure the "Script" Folder is the same as the server
-------------------------------------------
How to connect to server

Open the game manually by clicking on the "Game.exe"

Go to "Lan" were it says host IP that is were you put in the IP of the Server.

Now from here you click "Join"

All matches will be at random , but you can kick people out of your room if you waiting for a friend

-------------------------------------------
How to use Updater
Your going to need
WAMP or XAMP

After you download and install either or
Unzip the "Updater.rar" file
Open Marschlu and click on "Marschlu.sln"
Go to "DoLoad" and change ip adress to your server ip address

Then go to "Patch.cs" and change any ip address to your server ip

Put the "Patcher" files in the "www" folder of WAMP or XAMP
--------------------------------------------------------------------------------------------------------------------------------------------------
How to use :

To run the server you will require the card scripts, database and the banlist, check the following file/folder structure for a better understanding:



In order for users out side your LAN to connect to the server you will need to port forward the relevant port, in this case port 8911 is used by default.

The server is designed in such a way that when new card effects and rulings are added to the game just recompiling ocgcore.dll from Fluorohydride/ygopro/ocgcore will continue keep the server compatible with all YGOPro clients. You can download a precompiled version of ocgcore from the release section but this version might not be the latest version available, if possible always recompile. If you have handshuffling enabled you will need a ocgcore.dll from Buttys/ygopro after the relivant and latest changes have been merged down.

Configuration

ygoserver.exe takes two parameters, a port, and a *.ini format configuration file with these configurations. Without parameters YGOCore will look for the above file structure after tying to load config.txt. For example c:\ygocore\ygoserver.exe 9101 alternative-configuration.ini. Will start the server on port 9101 ignoring the configuration files serverport and load alternative-configuration.ini and not config.ini.

serverport what server port to listen on, default 8911
path default relative path, default '.'.
scriptfolder path to the script folder default `script'.
cardcdb path to the card database default cards.cdb.
banlist path to the banlist file default lflist.conf.
errorlog enable logging to file on fatal error, default true
consolelog enable console logging, default true
handshuffle enable disable hand shuffling, do not use with out the Buttys/ygopro ocgcore.dll and not Fluorohydride/ygopro
autoendturn enable auto ending the turn of players that run over time.
clientversion set the version of the core is expecting
splashscreen enable disable the startup art, default enabled. Requires consolelog
stdoutsupport enable additional standard streams API support for MyCard and SalvationDevelopment, and new programmers that do not wish to develop against YGOPro's TCP network protocols.
recycle disable the recycle feature, by default the server keeps running until exit by external means. When set to false server will exit with code 0 after one game.
maxdecksize Maximum number of cards in a deck default 60. Used for legacy formats.
mindecksize Minimum number of cards in a deck default 40. Used for draft formats.
maxextradecksize Maximum number of cards in the extra deck default 15. Used for legacy and anime formats.

Standard Streams API

The ygocore and the management software communicate via standard streams or TCP network. The core signals the management software its current state via a specific API, standard out stream comes via the console/terminal, these signals should not be confused with debug messages. Each call starts with :::: to check for if you are programming against it, this is an indication of a standard stream API call and not a debug message.

::::network-ready signal that the core has loaded and is listening on its given port
::::network-end signal that the game has ended, ie kill core request.
::::join-slot|roomname|#|PlayerName PlayerName has joined the duel in slot #.
::::left-slot|roomname|#|PlayerName PlayerName has left the duel in slot #.
::::spectator|roomname|# number of spectators where # is an integer.
::::lock-slot|roomname|#|bool slot #'s deck is locked in/out, and bool is True or False.
::::startduel|roomname RPS has started, this signals that the game has started.
::::endduel|roomname|WinningPlayerSlot#|Reason the winning player slot integer, and how they won.
::::chat|roomname|PlayerName|msg PlayerName sent a message containing the text of msg. If the server speaks PlayerName is [Server].
By default these commands are off. Requires stdoutsupport = true in the config.txt be set to true. For more information see the wikipedia article about it.

Request Strings

When YGOCore recieves a game request command from a connecting client it will parse and handle the request in one of 3 ways. First it will see if a game using that sting is currently active and then conncect the requesting client to that game. If not it will parse the request

Percy/FH/TDOANE Notation

0-2 0-2 O/T O/T O/T Lifepoints, Initial Draw Count, Draws per turn, Password nnOOOnnnn,n,n,n,xxxxx

------------------------------------------------------------------------------------------------------------------------------------------------------
Stuff to help you out

Pokemon TCG !


Projects
Projects - YGOPRO - Forum

Scripting
Card scripts - YGOPRO - Forum
 
Estado
Cerrado para nuevas respuestas.
Arriba