So today I have started a new project, and I was thinking long and hard over whether or not to create a project thread this early on, as I usually don't. But I figured I would go ahead and make one to keep myself motivated to get it finished.
Basically, 50 Pound Sword will be a complete PBBG library that will allow users with limited PHP and MySQL skills to make a browser-based RPG! Basically, any technical parts to making a PBBG, such as writing SQL, dealing with player info, inventory management, and more will be handled internally by the library. The end goal would be that someone just starting with very limited programming abilities will be able to use the classes I will provide in the library to make a game. I may at a later time expand it out to even cover Javascript functionality, but since the requirements on that are going to vary so much from user-to-user, that may have to be on a back-burner for a bit.
One of the first things I am tackling is the registration for the game. After filling out a self-explanatory .ini file with info about the races, classes and their stats, registering a player (once past the registration HTML, of course) will only take about 4 lines of code, instead of the 100+ it takes to do it right without it. That is what I am hoping to do with every common aspect to PBBGs.
I am hoping to be able to get an alpha out by the beginning of next year, but we will see how that goes. That isn't really that far away
50 Pound Sword - a complete PBBG library
- Jackolantern
- Posts: 10891
- Joined: Wed Jul 01, 2009 11:00 pm
50 Pound Sword - a complete PBBG library
The indelible lord of tl;dr
- SpiritWebb
- Posts: 3107
- Joined: Sun Jul 12, 2009 11:25 pm
- hallsofvallhalla
- Site Admin
- Posts: 12023
- Joined: Wed Apr 22, 2009 11:29 pm
Re: 50 Pound Sword - a complete PBBG library
Very sweet!
- Jackolantern
- Posts: 10891
- Joined: Wed Jul 01, 2009 11:00 pm
Re: 50 Pound Sword - a complete PBBG library
Thanks! I pulled a late-nighter tonight and got my registration component done. As a quick sample of what it is able to do, here is a test I wrote up to test out its functionality. Compare this code to the full code to check all of the possible errors (emails don't match, player already exists in the db, lengths of data are wrong, etc.), which can easily run over 100 lines. Most of the code in this sample are me setting up mock values to enter into the database.
Code: Select all
<?php
include "Register.php";
include "connect.php";
$username = "Burger";
$password1 = "fields11";
$password2 = "fields11";
$email = "burger@gmail.com";
$race = "human";
$tclass = "mage";
$secQes = "pet";
$secAns = "OsloRus";
$regObj = new FiftyPound_Register($username, $password1, $password2, $email, $race, $tclass, $secQes, $secAns);
$results = $regObj->doRegister($db);
echo "Code: ".$results['code']."<br />";
echo "Doc: ".$results['doc']."<br />";
echo "Msg: ".$results['msg']."<br />";
?>
The indelible lord of tl;dr
- Jackolantern
- Posts: 10891
- Joined: Wed Jul 01, 2009 11:00 pm
Re: 50 Pound Sword - a complete PBBG library
I am already starting to run into issues with flexibility. For example, how should character creation be done? The more options I want to add, the more complex it becomes for end-users because there are more things to specify. One of my goals was to make it easy for those with limited programming ability to use.
I guess I am worried that everything I am having to hard-code into the library may end up turning-away potential users.
I guess I am worried that everything I am having to hard-code into the library may end up turning-away potential users.
The indelible lord of tl;dr
Re: 50 Pound Sword - a complete PBBG library
I feel you, I did try something similiar and i`m still thinking about doing the same as you, creating a framework however, I too ran in to the same problems. I figured as much that you only need boiler plate functionality IE. registration, security, form helpers and boilerplate classes for "event" delegation, if you catch my drift.
However (!) what you can do is at the same time, create a PBBG game with it, thus figuring out how other users would want to use it. So if you want a class-driven game ( mages, warriors ) ( damn you: word: class) you could extend core functionality using a class: Classes.. Jesus, this won`t work.. I mean a programmable CLASS for the player which holds the GAME classes (warriors, mages,.. )
Oh man, this is going no where.. Something about boilerplate.
However (!) what you can do is at the same time, create a PBBG game with it, thus figuring out how other users would want to use it. So if you want a class-driven game ( mages, warriors ) ( damn you: word: class) you could extend core functionality using a class: Classes.. Jesus, this won`t work.. I mean a programmable CLASS for the player which holds the GAME classes (warriors, mages,.. )
Oh man, this is going no where.. Something about boilerplate.
Re: 50 Pound Sword - a complete PBBG library
There are plenty of articles on "Make Games not Engines".. and I can see why they might advocate that..
I think Xaleph, might have provided you with a good direction, develop a data-driven game.
Also don't try to cover each and every possible types/features that you can think of right now. Start off with the basic features needed to make 1 type of game, then slowly build on it... (if there is sufficient interest in it...)
I think Xaleph, might have provided you with a good direction, develop a data-driven game.
Also don't try to cover each and every possible types/features that you can think of right now. Start off with the basic features needed to make 1 type of game, then slowly build on it... (if there is sufficient interest in it...)
- Jackolantern
- Posts: 10891
- Joined: Wed Jul 01, 2009 11:00 pm
Re: 50 Pound Sword - a complete PBBG library
Yeah, I am actually a strong supporter of "make games not engines", but it seems at least a little different with PHP games, or maybe it is that in a way I was kind of focusing on a game. My whole idea was that since I have to make these pieces for a game I was wanting to make, why not put in an extra 20% or so more work and make it OO, loosely-coupled, componentized, etc., so others who are struggling getting started can leverage it as well.
I am going to think about this one a bit longer. I am also really wanting something more testable (all my manual tests were driving me crazy) and with a real debugger (because PHP debugging is so bootleg), so I may start looking at ASP.NET MVC a bit again.
I am going to think about this one a bit longer. I am also really wanting something more testable (all my manual tests were driving me crazy) and with a real debugger (because PHP debugging is so bootleg), so I may start looking at ASP.NET MVC a bit again.
The indelible lord of tl;dr