This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 95ee3349db5a3e7c007931d1afc0505956386d1c
tree e509caddf3a716f50eb4ed44b8f50c33c4563311
parent d6f18e2092ad15ef9711a39f80f97d9ab1603c81
tree e509caddf3a716f50eb4ed44b8f50c33c4563311
parent d6f18e2092ad15ef9711a39f80f97d9ab1603c81
| name | age | message | |
|---|---|---|---|
| |
.gitmodules | Sat Apr 12 23:36:26 -0700 2008 | |
| |
.htaccess | ||
| |
CHANGES | ||
| |
CREDITS | ||
| |
LICENSE | Sun Dec 09 15:48:52 -0800 2007 | |
| |
README | ||
| |
UPGRADING | ||
| |
cache/ | Sat Sep 01 20:49:02 -0700 2007 | |
| |
captcha.php | Tue Oct 09 05:20:12 -0700 2007 | |
| |
db/ | ||
| |
docs/ | ||
| |
external_lib/ | ||
| |
includes/ | ||
| |
index.php | ||
| |
resources/ | ||
| |
scripts/ | ||
| |
system_check.php | Sun Dec 09 15:48:52 -0800 2007 | |
| |
template/ |
README
_ ___ _ _ _ ___ _ _
| |/ (_) |_| |_ ___ | |/ (_) |_| |_ ___
| ' /| | __| __/ _ \ | ' /| | __| __/ _ \
| . \| | |_| || (_) | | . \| | |_| || (_) |
|_|\_\_|\__|\__\___/ |_|\_\_|\__|\__\___/
_ ___ _ _
| |/ (_) |_| |_ ___
| ' /| | __| __/ _ \
| . \| | |_| || (_) |
|_|\_\_|\__|\__\___/
=================================================
Welcome to KittoKittoKitto, a Virtual Pet Site template app.
Kitto's goals are simple:
* Help new petgame developers get off the ground as quickly as possible.
Writing the whole register/login/boards/adopt pet thing over and over
is a pointless waste of time.
That said, it is not within the scope of Kitto to provide *everything*
you would see in a run-of-the-mill petgame. What is in this package is
every major feature a basic installation of Kitto is going to provide.
There is no battle stadium or trading post. There are not even user
shops! The purpose of Kitto is to provide *the very basic* components.
It is my personal belief that providing *too much* functionaility will
just encourage dozens of sites using the Kitto code and *no*
custmizations to speak of will spring up.
Your game should be unique - but that does not mean you should waste
time re-inventing the wheel. I will probably be publishing several
extensions to Kitto to add those functions, but they will be optional
(and, of course, Free) add-ons.
* Help educate brand-new and novice programmers by giving them a well-
designed application to hack away at. The code in Kitto will (hopefully)
service as an inspiration light of Best Practices and Brilliantly DRY
code to the next generation of pet-game developers.
I started programming because of petgames. Three years later, I work for
an ISP doing web applications. I want that to happen to you, too - it's
fun, it's good experience, it makes money. I built a career because of
what I learned, and I am all about sharing that experience with whoever
is willing.
== Installation ==
The Kitto wiki is gone, but you can find install directions in ModularGaming's
wiki. This old revision of their install document is what you want:
<http://modulargaming.com/projects/modulargaming/wiki/MgInstall?version=13>
== Post-Installation ==
My tips to you at this point:
* Read through the code. Learn where things go in the directory tree. There
really isn't that much code to look at - most of the work is being done
by ActiveTable automagically.
* __LEARN HOW TO USE ACTIVETABLE__. It's a brand-new library, and docs are
still forthcoming (although there's pretty good in-line documentation that
can be compiled into HTML with phpdocumentor), but ActiveTable is a
*SERIOUS* timesaver. Without it, I would not have been able to write
Kitto in (literally) five days.
There's some documentation for the library at
<http://elsa.godless-internets.org/aphp/index.php/ActiveTable>. It's not complete,
but it's not exactly sparse, either.
Writing and debugging SQL is a bitch. It's error-prone. It's a timesink.
Why not have most of your SQL written for you by ActiveTable? ;-)
Furthermore, ActiveTable uses PEAR::DB#prepare()/PEAR::DB#execute() for
all of its operations, so you're absolutely safe from SQL injection,
even if you don't use stripinput() in whatever you're passing it. How
can you pass that up?
* Use Smarty templates. As you can see, they keep all of your script files
very small, clean, and easy-to-read. Plus, Smarty has a kickass caching
engine, so when you realize the boards are causing high server loads, you
can have Smarty cache the HTML it generates with a few extra lines.
No SQL/HTML generation = less load. You can even have Smarty expire a
cached template whenever someone makes a new post. Believe me - Smarty
has a lot of features that make it worth learning.
The Smarty manual is available at <http://smarty.php.net>. Give it a once-
over, at the very least!
Nick 'Owl' Evans, 2007-09-22
KittoKittoKitto has been brought to you by the Yasashii Syndicate.
<http://yasashiisyndicate.org>
Yasashii yoake, guys!









