Skip to content

Automatic run-time patching disc for Phantasy Star Online as well as other online Dreamcast games.

License

Notifications You must be signed in to change notification settings

Sylverant/pso_patcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README for Sylverant PSO Patcher v2.0
Copyright (C) 2011-2013 Lawrence Sebald
---------------------------------------

What is Sylverant PSO Patcher?
------------------------------
Sylverant PSO Patcher is a program designed to be used as a boot-disc for the
Sega Dreamcast to patch various aspects of the game Phantasy Star Online. The
individual items patched depend on the version of the game, which is detected
automatically at run-time. This patching program offers the ability to have
PSO auto-connect to a private server (specifically the Sylverant Private
Server hosted at sylverant.net), fix the missing ultimate maps in v2, and to
re-enable use of the versions of the game that have been hampered by the
Hunter's License check.

While the first and third patches (the private server connection and disabling
the Hunter's License check) could be done with a cheat device, such as the
Codebreaker/Xploder, many people are opposed to their use, even for legitimate
purposes that do not involve cheating. Sylverant PSO Patcher gives those
opposed to using cheating devices another option to connect with. Also, within
our research in putting together this program, we could not find a way to get
the second patch (the Ultimate mode map fix) to work with Codebreaker/Xploder
at all!

This program is the result of a bunch of research done by myself and Aleron
Ives. Aleron Ives is the one that came up with the Ultimate mode map fix (both
on PSOPC and on the Dreamcast versions). I was the one that worked out how to
fix the Hunter's License check issue. In addition, Lee provided Ives (and thus
myself as well) with some data that was needed to complete the project. Many
thanks go out to both Aleron Ives and Lee for their part in getting this project
off the ground!

Sylverant PSO Patcher also now supports (if it is compiled to do so) patching
the game Planet Ring to connect to the first private server for that game. There
is much less interesting to have to patch for that, mainly just the server
address and a couple of other strings (for blind dial and such).


What has changed in v2.0?
-------------------------
In short, pretty much everything changed. The program was mostly rewritten from
scratch. That said, that probably doesn't interest many people (if you want the
nitty-gritty details, look at the ChangeLog).

v2.0 fixes booting many games that would just not boot with earlier versions of
the patcher, including one "new" version of PSO supported by the patcher
(specifically, the PSO Network Trial Edition). Note that the patcher still isn't
exactly intended as a general-purpose boot disc, even if it does happen to work.
Some games still won't boot with it (any games that use Windows CE will throw up
an error message, for instance).

v2.0 no longer compiles against KOS (although it does include a few KOS source
files). That actually accounts for quite a bit of work that went into this new
version.

v2.0 also fixes the annoying battle mode glitch that made it impossible to
actually play battle mode games on PSOv2 when you boot with the patcher. Yes,
the server has pretty much always supported battle mode and it did work -- just
not when using the patcher disc. If you tried to play battle mode before and
just immediately got the Time Up message, well, that's what this fixes.

Another slight thing that v2.0 adds in is support to patch the background music
table in PSOv2 to add the battle stages music to the main table so that it can
be selected by quests. The only quest so far that does this is Aleron Ives'
Prospective Horizons quest. This patch is optional. If you start the game with
the A button instead of Start when it asks, then the bgm table will not be
patched.


What has changed in v1.2?
-------------------------
In v1.2, work was performed to fix booting of games other than PSO. With simple
games (games with only one track in the High-Density area), everything worked
out fine. In fact, in games with multiple tracks it would work in most cases, as
long as there was only one data track. However, I ran into at least one game
that has multiple data tracks, and it would not work with that game. Also, v1.2
actually reads the boot file name from the IP.BIN, so it can boot games that do
not call their main binary 1ST_READ.BIN.

v1.2 also added support to patch the game Planet Ring to connect to the private
server for it. I don't run that private server, so if you run into bugs on that
server, don't ask me to fix them. ;-)

Finally, my compiled versions of v1.2 use newer version of KOS, a few commits
after its 2.0.0 release. Thus, if you had a problem where the patcher wouldn't
boot because you had a microphone plugged into your controller, that should be
fixed.


What has changed in v1.1?
-------------------------
In a nutshell, v1.0 was very buggy. In fact, I'm somewhat surprised that we
didn't see the bugs in testing it initially. For that, I apologize. Version 1.1
fixes the following bugs:

1. PSO shows only a black screen when connected via a VGA box.
2. Various in-game bugs are exhibited, such as being able to walk through the
   pillar in the Hunter's Guild and techniques not targeting properly.

The first bug, I'd consider somewhat minor. The second one though is plain bad.
They're both fixed in v1.1 though.


What versions of PSO does Sylverant PSO Patcher work with?
----------------------------------------------------------
Sylverant PSO Patcher works with the following versions of PSO (for Dreamcast):

    - Phantasy Star Online Network Trial Edition - Japanese
    - Phantasy Star Online - Japanese
    - Phantasy Star Online - US
    - Phantasy Star Online - European/PAL
    - Phantasy Star Online Ver.2 - Japanese
    - Phantasy Star Online Ver.2 - US
    - Phantasy Star Online Ver.2 - European/PAL

That should be all versions released for the Dreamcast, with the exception of
any beta versions. If you find a version of the game that it does not work with,
please let me know! Every once in a while, it may report an issue reading one of
these game discs. Most likely, this means that either your disc is
dirty/scratched or the GD-ROM laser in your Dreamcast is weak and cannot read
the disc properly.

Also, please note that this program intentionally only works with GD-ROM
copies of the game. It will not work with any versions burned onto a CD-R, and
I will never release a version that works with CD-R copies of the game. Doing
so, in my eyes, would encourage piracy, which is not something I want to do.


What versions of Planet Ring does Sylverant PSO Patcher work with?
------------------------------------------------------------------
Being that there is only one version of Planet Ring that I am aware of, it works
with that one version. The note above about requiring a GD-ROM is still valid
here as well.


How do I use Sylverant PSO Patcher?
-----------------------------------
Most people will probably want to use Sylverant PSO Patcher as a boot-disc for
their copy of PSO or Planet Ring. To do so, just burn Sylverant PSO Patcher as
you would any other homebrew program for the Dreamcast. The 1ST_READ.BIN file
that is included with the binary release is pre-scrambled.

How you go about burning the disc is completely up to you. I personally still
follow Marcus' old guide at http://mc.pp.se/dc/cdr.html and burn from the
command line on my Mac or on Linux. On Windows, you may find BootDreams to be
useful in burning the program.

It is also possible to use dcload-ip or dcload-serial to upload the binary to
your Dreamcast and run it. If you want to do that, I suggest taking the binary
release and descrambling the 1ST_READ.BIN and uploading that. You should use
dcload's "-n" switch, as Sylverant PSO Patcher overwrites dcload's memory space
on the Dreamcast shortly after starting. Without the -n switch, dcload will get
very confused and probably prevent the program from working at all.

Once the patcher starts, you should swap in a GD-ROM disc. From there, follow
the prompts on the screen (it should tell you what version of the game you put
in the drive, and ask you to press start to boot the game). If it displays a
message saying that it doesn't recognize the disc, you may want to reboot your
Dreamcast, and check your PSO disc and the laser of your Dreamcast, then try
again. If you put in any regional version of PSOv2, it will give the option to
patch the game without a music patch. Look at the "What has changed in v2.0?"
for more information about that particular patch.

Note, this program can be used essentially as an import boot disc for the
Dreamcast as well. In this case, if you're putting in a game other than PSO, you
can safely ignore the warning that it doesn't recognize the game. As long as the
game is pretty normal, it should "just work".


Special Thanks!
---------------
Special thanks go out to the following people who have in some way influenced
this program:

    - Aleron Ives - For pushing me to do this in the first place, for the
                    Ultimate mode map fix, and for providing me with some data
                    that was needed to finish the program. Also, for testing out
                    a few initial versions of the program before I released it.
    - Lee - For providing data to Aleron Ives that I needed for finishing the
            program.
    - Schthack - For making the first private server for PSO. Without Schthack's
                 private server, PSO would probably be long gone by now.
    - Jean-Paul Van Gorder - For providing the background used in the program
                             (for PSO).
    - Neoblast and Indiket - For all of their work on the Planet Ring server.


3rd Party Acknowledgements
--------------------------
This program makes use of the following 3rd party software:

KallistiOS - Copyright (C) 1997-2013 KallistiOS Contributors
- Licensed under the KOS License, which is a 3-clause BSD license. See
  README.3rdparty for more information.

Various public domain sources from Marcus Comstedt
- The iso9660 code in v2.0 and later comes from Marcus, as well as the maple
  code. See the README.3rdparty file for more information.


License
-------
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License version 3,
as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.


That's all for now!
-------------------
Thanks for using Sylverant PSO Patcher. Long live the Dreamcast, and long live
Phantasy Star Online!

- Lawrence (aka BlueCrab)
  http://sylverant.net/
  July 26, 2013

About

Automatic run-time patching disc for Phantasy Star Online as well as other online Dreamcast games.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages