PDA

View Full Version : Sideprojects: Birthright utility / Game



Mirviriam
04-14-2008, 05:03 AM
Bear with me, I'm a horrible writer, a beginning programmer(self taught till last year), & a pompous ass sometimes (though not intentionally) - for all of this I beg your forgiveness & patience. I sat down from six today until eleven writing this piece (yes I'm also slow sometimes too).

I have seen a huge growth of games that resemble Birthright: The Gorgon's Alliance, minus the map feature.

Mainly PHP & some AJAX pages right off the website. They really are not much too look at & there is no use of boundaries, travel time, etc.

Still they point out that we could potentially remake the Gorgon's Alliance. Of course to avoid trade marks the game name would have to change. Same with all the intellectual property (Yes it HAS to change, the only way to support these sites cost is to advertise down the right side of the page & I lost one site to blizzard legal dept. already).

If we approached it with the expectations of a year & a half development time to flesh out a real system, we could reach the level of play held in Birthright to some degree.

Phase 1: Form the basic system to build the game

Identify the technical DM(s), the reference gophers, the story/plot/NPC writers, the website manager, programmers, the meeting times, how much we delegate versus debate in the meetings, some sort of voting system in regards to issues, the communication medium, the final arbitrator of all issues. I would also love to see artists recruits, maybe off deviant art or some place & offered free advertising if they allow us usage(they decide the link that will show in bottom corner of art, nothing more - lookup War3: DoTA to see examples of this arrangement).

Phase 2: Decide the scope

This is our project goal - Deciding if this game is going to be targeted to everyone in the way that Gorgon's Alliance was or towards the forum goers here.

As I would put it a game operating at the domain level using core rules for 3 nations each with 5 provinces. Also, what unit types, holding types, domain actions, magical items, realm spells, types of checks, npcs to be used in here. One player per realm or multiple players one for each holding type possible? Lieutenants as npcs only or capable of being played? Language to program the game. Will the game be website based or program that is ran on the computer at home. Will it be mac or pc. Does this program include network features to allow players to connect over the internet etc. etc.

Phase 3: Setup the logical structure

We are writing the engine of the beast here. Decide if turns will have a week, day, hour, minute limit on their length or be real time. Find how we want lieutenant actions to go. How spies will work. Visibility of armies. How much information trade guilds can pass/find/hold. Anything to do with the mechanics of the game has to be written here. It all happens before we begin to code the game. Setup of trade routes etc. I figure we have most of this information here - its a matter of you guys deciding if optional rules are better to use in a computer game than board game style. We need to pay close attention to army movement & spells here.

Phase 4: The coding of said structure into a working game engine

This phase turns all the rules from collection of excel files into a set of inheritable files we can apply to this game or any other birthright games we create. The realm spells, army movements, creations of holdings need to be translated from rules into actions the program can use when needed.

Phase 5: Then using fake dice rolls we check to make sure all the elements communicate together, none of the turns are out of order, all the players get their prompts to do their things. At this point if all goes well, we can even have someone create a visual side to the game as in menus etc. All of these tests are done with a file of values that never changes.

Phase 6: More stubbing (phase 4)

At this point we need to have a few test realms setup with their respective holdings. The game is ran just to see if there are holes in our logic when bringing the realm values together with the engine. Basically testing high & low values, what happens if a player disconnects if we do this over the net sort of thing.

Phase 6: Generation system for data

We know the game runs at this point we just have to flesh out the realms/domains/npc/player traits etc. Instead of having a programmer sit down with a writer, we have the programmers write a program which allows as many writers as have to all create realms, npc, items, magic spells within certain limits, new domains, random lists of names & stats. Finally we include an agreed upon format to store all of this & program a method of reading the information so the others of the community can point out weakness. For the first run we just need some core rules & small test zone.

Phase 7: Connecting the engine to the data

Once final proofs & decisions on the game data is finished. We look over the data & figure out checks the program has to make before accepting data as valid. A method to load only certain parts of the realms needs to be in place. We need some way of making sure any visual elements line up with the data provided (one of the hardest parts of making it work with expansions). Then load this information the engine.

Phase 8: Play testing

[Obviously we play the game we made] Two months of testing(debate this in phase 1 or 2).

Phase 9: System verification

If we have one version made, we need to ensure our campaign creation or 'expansion maker' is well oiled. So future writers can create new territories. We also brainstorm everything possible for future problems based on the non-core rules you guys are writing on the wiki.

Phase 10: By the stroke of luck it takes to reach this place & this phase we will have to fly out to International Falls, MN to savor some of the best home brew ever made (not mine of course) in celebration of our child.


Any thoughts or feelings on this? My main concern is the length of the project losing people & trying to accomplish too much on the first time. I kind of see an hour session or so a week to work out anything questionable for each of the groups we setup. Then every third week or fourth week for everyone to just make sure we are all on task. Probably later in the night - but any schedule can be made to work.

Magian
04-14-2008, 08:08 AM
Count me in.

Credentials: Data entry for Birmail and co-concept designer.

I'd like to suggest to invite the creators of that program if that's cool. I am in contact with them. I like the idea of using the whole community at BR.net.

I'm in I'm in I'm in I'm in I'm in.

Lucius
04-14-2008, 12:58 PM
Well, I know I haven't posted before on these forums, but if there's anything I can do to help, count me in. Other than being a roleplayer for more than half of my life, I am an amateur writer (with two novel drafts in submission to publishers) and have studied both academically and on my own C++. With Java I have to admit I'm not so current, but I'd still like to help in any way I can.

Oh, and hello, forums!

Mirviriam
04-14-2008, 07:08 PM
Lucius:

Right on, I'll have formal java done this summer - probably before the group is ready to start coding.

My instructor for C++ is actually who suggested I finally do this project. I will not have data structures out of the way until next spring, but I have an sql hosting active - unused of course :)

I'm down for doing anything the group decides on, just my familiarity is mostly in C++ on the windows side. I have used the gcc compiler before, but not well. I used to help take care of IIS/asp/coldfusion/php/apache/linux boxes for 3 years - so I can probably make any of that dance to our tune depending on what our guys are familiar with using.

Magian:

That sounds awesome, while I wrote all that stuff out above - I've only accomplished one project with another friend for diabloII. We mainly got it going through brute force & time spent on it. This is my first run trying to organize & plan something thoughtfully. The chance to chat with them or even get them in on any segment of the process would be better than I had hoped.

BTW: Welcome back :)


Here's my take on what we need for manpower...

This is rough, there is no limit to how many people we can have - as we can divide out the labor & move faster.

Game mechanics - Probably 3 or 4 people, unless we are better off than I expect or we limit the game this will probably take the largest chunk of our time.

Campaign/Expansion group - 2 or 3 people, these guys setup the rules with the first group for what sort of character levels, realm resources levels, number of lieutenants in pool for availability, magic items allowed, realm spell effects needed. Once we know how the mechanics go, then these guys can start up working out balancing formulas & rules for keeping realm power within normal. These guys should be examining the current realms to find the power structure used by the original makers for balancing several realms to create semi-stable territories.

Miscellaneous - 1 or 3 - Someone needs to be our impartial judge between the DM's and maybe help out on campaign group too. Having a player perspective here would probably help flag for us issues we might not see being too close to the project.

Developers - 2 or 6 - This really depends on who we get. We'll need a database, an interface & of course the actual engine driving the game mechanics. Per methods I can think of:

Web Application -

Web designer / Administrator (preferably css capable)
Translator for PHP or AJAX or JAVA (preferably w/database exp) - 2+
SQL server guy - at least for the initial setup
JAVA or C++ programers - 2 or 3 - If we decide to use the website as a portal to our program, otherwise our Translators have a bigger load.


or we need ...

Stand alone game -

Program Designers - 2, maybe 3 - setup of algorithms, sorting out work load, function prototype lists & descriptions
Data group - 2+ - we'll need someone to work with designers to decide variable storage; odbc/sql/flat file if we go with a daily run of the program. Then we need to have at least one other person who is going to learn as an understudy & work with the Campaign/Expansion group to adapt the database months & years down the road.
Network programing - I've seen some things on source forge for the tcp/ip stacks - but if we decide to have multiplayer on the non-website based program - one of these guys is a must.

EDIT: Inserted "or" between the lists of labor we need.

Arjan
04-14-2008, 07:22 PM
Over the years i have done several tries to build an automatic webbased BR game engine.

Last try was a couple of months ago when i was trying out the Zend Framework.
Generally thats a good framework to work with, although somehow i never really got it to work smoothly on my wintel machine.

i did however made an interactive map like the one in gorgons alliance. able to zoom in on the map. click on the units folding out a DIV with commands. (based on the AJAX map used in inferno RPG.. really worth looking at btw)

so basically i got bit and pieces lying around, waiting to be used :)

Magian
04-15-2008, 12:09 AM
I know its wishful thinking, but the ideal map would be like the one for Battle for Middle Earth. Its just that I am playing that game right now and I can't get it out of my head thinking how wonderful a Cerilian map like this would be. Just a thought.

tpdarkdraco
04-15-2008, 02:39 AM
Mirvirian:

Just so I am on th same page. You are talking about creating a game that has the Birthright feel but uses none of the published material or rules?

If this is the case I have some original material of a campaign I was making up before Birthright was published that was set around running your own Kingdom. I have a full color map already created with some base Kingdoms, which were like City States but can be easily adapted.

I don't have any programing experience but would love to be involved in the creative/rules side of things. Sounds great.

Mirviriam
04-15-2008, 04:22 AM
Heyas guys - I've got a big test tomorrow so I'm limiting myself to an hour of free time :)

This is not really going to be ran by myself alone guys. The programing end will swamp me. I am just the most recent voice. I hope 'we are legion!!'

Below is my short answer - I know everyone has a pipe dream they are working on - this short version is a test to see what life is left in Birthright resources. As it stands we could be at it for a year before we have a true fully working 10 nation world & that would make us the fastest developers in the world...some companies never release a single game before collapsing - most take 2-3 years.

If we swing this standard rules version & see how the BCRS works into it. Then the "Fellowship of Brave & Hardy Souls" can vote on what happens next. You have got to keep in mind this is an epic undertaking. Save all your ideas, take photo's, blog it, brag it, walk it.

Three goals,

Standard Birthright playable domain turns
A tool to get the information off the wiki for npc, weapons, armor, units, domains, realms etc
A way of creating new expansions either thru wiki upload or a separate program(The data has to all be in the same format or it is just garbage).


or

For example, If you look at Blizzard, who makes Warcraft, Diablo, Starcraft - they break their games into chunks & delegate responsibility out from there. Briefly the breakup looks like this (with many subparts)

Game engine - a driver that handles how players interact with world & relays what is happening in the world around us back to our screen
Setting files...

World file - this is a data file called .mpq which is like a blizzard propriatory zip file basically, all the terrain shit not related to the npcs or players & physics goes here.
NPC file - another mpq holding the creatures & our toons
Skills file - all the things as actions that interact (spells, lockpick etc)
I believe there are a few others, but in the past 5 years blizzard is using inheritance which is messing with the old tool I had for reading their files. I know there is at least 3 of these because that's how many I had to download to host my on wowserver.

Then in some of their games they release the files they use to create the Skills, World, NPC file, & call it a campaign editor. These campaign editors allow anyone in the world to make their own version of the game. Think about that Hellfire expansion for original diablo - that's made with the campaign editor...some of the basic stats were changes, but mainly they were able to add more world.



Arjan:

NICE! We don't have an AJAX guy yet - are you thinking of volunteering some time? :)

Magian: [u]
The style of map Arjan is talking is like goodmaps minus the satellite view. It's sweet, if he's our man we're a long way towards making a very good looking game. Our project is more directed towards the world system side than the visual - we need the game rules clear & the engine that drives the domain turns perfected.

[u]All interested parties ... keep posting, we might need to organize this thread & I haven't cleared using this portion of the forum as the idea is still a 'twinkle in the eyes of the parents' :)

Arjan
04-15-2008, 12:57 PM
err i am in no way an ajax guru :)

i am the briliant creator of ideas and foremost stealer/ripper/adjuster/twister of other people techniques ;)

over the years i have been tossing with this, the main thing i really learned about it is to keep it as simple as possible. the biggest lesson if you want to make things too big and too good you WILL loose interest in programming for it over time (like the 2-3 years you already mentioned.. way too long)

my idea is/was to create a simple webbased rts game like the gorgons alliance. no fancy moving images.. just simple forms to do your turns. the only spiffy thing would be the interactive map to move troops etc.

with 2-3 people on the PHP/MySQL a working basic framework can be done in a few months... from where we can see if we still got the interest and want to move on to something bigger. (imo)

Vicente
04-15-2008, 01:52 PM
I agree with Arjan, the project (webclient + pc client) is too ambitious and requiers a big team with a lot of knowledge (and free time).

A web-based Birthright is a much better approach for a start (I would even take out the graphic map). It's not going to be easy but it has more posibilities of having a happy ending :) (it needs less people, less skill,...).

bbeau22
04-15-2008, 07:12 PM
I would certainly help as needed. I don't have any programing knowledge but do have a degree in Writing. I am sure there are things you could have me help and work on like proof reading.

-BB

Mirviriam
04-15-2008, 11:19 PM
What I laid out is either a program or a website. These posts aren't short, I posted in the top half of the msg that it was one or the other - upto the group of people who will be working on it.

The bottom half should have a "or" there & I'll fix that.

Mirviriam
04-16-2008, 02:55 AM
Vicente + Arjan:

If the map is ready - it's literally the easiest part of the program - we figure the hooks & design the functions. That gives us the distance too. Saves us the time of coming up with arbitrary values without visualization on distance.

Either way we'll know who's helping us next week.

bbeau22:

Coolies mate - We're just holding till next week to see who else signs on board to see if we will make an offical a go of this thing :)

Altcar
04-16-2008, 10:23 PM
I would not consider PHP as your main programming language, I would suggest some JSP-Struts or JSF because of the advantages of Java and all its components. You can easily integrate AJAX to that solution.

What's would be hard is the put the birthright map clickable and dynamicaly change the country border. Once this done, it's easy to be done with everything ;)

I can help with some part but there's a couple of thing that will have to change from the basic birthright stuff.

Altcar

The Swordgaunt
04-17-2008, 08:37 AM
There's so much geek-speak in here I can hardly discern what you're all talking about... Since it appears like it could be fun, if brought to fruition, I'll contribute with moral support.

"GO TEAM!"

Arjan
04-17-2008, 09:21 AM
I would not consider PHP as your main programming language, I would suggest some JSP-Struts or JSF because of the advantages of Java and all its components. You can easily integrate AJAX to that solution.


well i have thought about jsp/jsf but it has also some downsides.

* the need of an application server.
PHP can run on the current BRnet webserver, otherwise we will need to have to find another server which runs apache tomcat (or similar)..which means extra costs.

* jsp/jsf vs php knowledge.
more people know PHP, meaning more can contribute in a way. (and easier maintenance not having to deploy everything)

* PHP has grown in capatebility.
things i came up with are now easy to accomplish in PHP

so my suggestion is to go for PHP to keep things central here on BRnet. also Subversion is available on this server.

Vicente
04-17-2008, 09:51 AM
For language, I would go with the one people know best. Any web solution (LAMP, Java/Tomcat, ASP.NET/IIS,...) is capable of doing perfectly what you have in mind, so choose the one the people feel more comfortable with.

Also, for hosting the code and things like that, you could check SourceForge, GoogleCode or Codeplex. The three of them work pretty well and will give you a lot of tools without the team having to "waste" work preparing the environment.

As for development itself, I wouldn't use too much time on design either. I must admit that I have been pretty absorved by "agile" metodologies lately, but in this kind of free projects I think they work pretty well (people need to see results to keep the morale high).

Regards

Mantyluoto
04-17-2008, 10:55 AM
There's so much geek-speak in here I can hardly discern what you're all talking about... Since it appears like it could be fun, if brought to fruition, I'll contribute with moral support.

"GO TEAM!"

seconded!!!

Fransys
04-17-2008, 10:58 AM
Hi all,

I (Jason) worked on the BirMail program a few years ago, with Mark, but to be honest I've lost touch with BR since I went back to uni (due to time pressures).

Maybe I can throw in some comments about the difficulties we experienced though. Feel free to ignore them.

Firstly, you need to decide whether a DM is needed or not.
Either you need a DM or you need a very tightly formatted/restricted turn input system.
I'm guessing that you want it all automated like Gorgon's Alliance rather than with a DM like the PBEM systems, however, I personally think that one of the beauties of BR was the flexibility from having a DM present, so that you could do unusual things that maybe the designers hadn't thought about.

Edit: Hmmmm... in re-reading you were probably looking at human DMs afterall I guess. That'd remove a lot of the coding issues (no AI needed). I'd suggest getting info from current DMs asking what they find tedious or time consuming.

--

With a DM you need:

1) A simple way to allow data modification to cope with unexpected changes.
In hindsight I think we should have linked to a database with a GUI editor so that changes could be made outside of the tool and you don't spend ages coding up screens for each data type.
(Anyone who's used BirMail will realise that a lot of the data screens could have been implemented as, for example, MS Access forms, or using one of the form front-ends for MySQL. This would have saved us a lot of development time, and a smaller app is a more easily maintained app.)

2) A fast method for processing PC actions and for generating response text. These can takes ages to manually process!

3) A quick way to prompt for NPC actions (make suggestions maybe?)
Otherwise it's easy for the DM to forget some NPCs acting. This isn't really a problem if they are a long way from the PCs but it's nice to see other things happening in the world anyway, and actions can sometimes have interesting side-effects for NPCs.

4) Some way for specifying how to bid RP against (for?) actions of other characters. This was a little complicated to handle without feedback from players.

--

Without a DM you need:
1) Automation of NPCs - an AI. (Not as easy as it may seem.)
2) Turns to be entered by players in a way which is unambiguous.
3) Support by the automated DM for all actions that PCs may come up with.
4) Some method for resolving bidding of RP to counter actions, and an unambiguous way for PCs to specify what they wish to do.

--

Also, note that data entry from the books can take ages. My thanks to all who did this for us as I'd never have had either the patience or time to do it.

Aside: I did at one point consider going back to re-visit BR campaigns for smaller groups. My thoughts were:
1) Central database in MySQL or similar, with forms for any manual changes required by DM.
2) Turn entry program for players, with GUI map to see where things (units, holdings etc) are, like the BRView program, for those who know it.
3) Turn processing program for DM - to read turn entry and help DM to process actions.
4) Use NeverwinterNights for adventures and explorations. (Better than NWN2 for multiplayer and much quicker to knock together simple adventures.)
5) Use Medieval 2 Total War for battles, with appropriate unit stats modified. (Requires players to have decent speed PC though and to be in similar timezones for real-time battles.)
Edit: I was actually thinking MedTW1 at the time of planning cos it was a few years ago, but Med2TW is prettier. Obviously I only meant the battle part not the campaign part.
I was planning an 'export data from br and create battle scenario file for MTW' then play the battle between the player(s)/DM and then manually enter results. Obviously there's be issues with non-human troops looking wrong unless someone was prepared to do the models/animations but I was happy to live with that.

The plans came to nothing due to time pressures, but I thought I'd throw it in as food for thought anyway. Why think this way? Mainly because of the development time needed to implement these things. So I do wish you all the best with the development.

---

Final comment: Regarding PC vs Mac (and I'd throw in Linux): Even if you make stand-alone applications which just communicate with a server/web site, you can still make them platform independent. One obvious language is Java, but there are others, and there are many platform independent libraries which could be used to create multi-platform from the same source code.

Jason

P.S. Paul: I replied to your email but the reply bounced. Obviously, I came to read this because of your email.

Majinotaku83
04-18-2008, 09:03 AM
Hi!

I must admit some friend of mine and myself were interested in seeing if we could try and make a modern/upgraded version of Gorgon's Alliance. Hearing that you are thinking of doing a modified game style i would love to offer my help.

Unfortuantely, i have only just started my Game Engineering course (Polytechnic in Japan) so I dont know that much about coding and such (we are starting to use Java and learning how C++ works).

If in a year or so's time you might be in need of some help, i would like to offer my help for then. Its not very helpful, but i wanted to say this before i waited too long and lost my chance to.

Thanks for reading and best of luck ;)

Mirviriam
04-21-2008, 06:32 PM
Thanks a ton for all the responses - I will tally up all the programming languages to see where our strengths are tonight.

I'm leaning towards a webiste with mysql database - as any future projects will be able to '...stand on the shoulders..." of the work we are doing for making the wiki information measured/meaningful to a program's perspect.

Arjan
04-21-2008, 10:31 PM
Thanks a ton for all the responses - I will tally up all the programming languages to see where our strengths are tonight.

I'm leaning towards a webiste with mysql database - as any future projects will be able to '...stand on the shoulders..." of the work we are doing for making the wiki information measured/meaningful to a program's perspect.

an subversion server is available here at BRnet. i can ask Flip to make an account for us.
as for hosting, that can be arranged on BRnet too.

Mirviriam
04-24-2008, 04:32 AM
Roster as we stand 4/23/2008 - 11:14 PM Central time - If I missed you I apologize...working from my 12" laptop...post away & I will correct it.

Let me take a minute to say thank you for all the response too gentlemen!

World/DM/Literacy Items

Magian
Tpdarkdraco - original material
Bbeu22 - writer
Swordgaunt - interested by stander? :)
Mantyluoto

If we go web-application:

Java: Vincente, Altcar
PHP: Mirviriam, Arjan


* - I worked intimately supporting IIS/ASP[x] for a cluster handling on average 700 websites. I am going to exercise executive decision & not allow IIS to save time...if we find a perm host with an extra T1 & 24/7 physical access we can review that decision.

If we go program-based-application:

C++
-----
Lucius+
Majinotaku83
Mirviriam

Java
---

Lucius -
Altcar ?
Majinotaku83

Ajax/Zend
----

Arjan



One extra thought -

When I worked for the ISP/Telcom - we would bring in extra help by having our coders who did not know webcoding to write up objects in C that we could drop into the server's cgi-bin & have the webpages call for us (they actually ran WAY faster too).



Find programmers & DM's

Still need website design & assign the roles of each person for coding.
Do I have a volunteer to take over the role of "Overlord" for the project...I will be around through all the phases, but a real administrative mind, with organizational bend would be helpful. If nothing else than to document the weekly things on a blog for our amusement.
We are short simple html designers - is there anyone on here who does not code programs/php/java - but can do CSS/HTML to act as the web page designer? (who has not spoken up already?)
What kind of chats does everyone use? AIM/Yahoo/MSN/IRC comes to mind just because of the chat room styles.
Maybe hit up one of the biremail games to see if any of the players have thoughts on the email version of the game for improvements?
Find a night / time that generally works for coders
Find a night / time that generally works for DMs



Process Status - Phase 1

Last Update: 04.23.2008 - Next Update 04.28.2008


Sub-Step 1:

In progress


Sub-Step 2:
Determine our language/tech based on time people can forward per week/month & experience.
If we will have DM ran by the computer or need a DM to run campaign through interface.
How many players & if players can opt to play lieutenants.
Determine how big of a test world we will be using & if we want a live database (SQL) for the test world or flat file along with it's format.
I like the subversion account thing, does anyone have a favorite easy to setup/use/display collaboration environment which we can display jpg's or photo's in to?

Vicente
04-24-2008, 07:52 AM
Hey hey, one thing ;) While I don't have any problems posting in this kind of threads or giving advice if I think it can help, I have no time to devote to a project with this scope :( (and it will need people with quite a lot of free time).

Also, I'm a .NET guy, no Java here :p (C#, VSTS, ASP.NET, SQLS, etc etc ;)). If you search for Java people, maybe the PC Gen mailing list could be a good place, there are a lot of coders there and they love DnD. So if they love Birthright too there's a possibility they would join the project (or at least offer good advice).

Regards

thrakkazz
04-24-2008, 12:09 PM
What's the purpose of the thread ?
Do you've the database or at list the datamodel ?
I'm using an Access db (no no don't fire at me) and my java program to deal with everything related to file generation.

db is used to store the data (regent, domain, province, holdings, units and so on)

program is used to deal with:
- scouting reports
- loyalty maintenance depending on tax level
- random event
- budgets (military and common budget)
- writing htm file to send to players after each season is completed and resolved

Last add on is a module I'm using to resolve battle.
The process takes care of:
- the landscape (plains, forests, and so on)
- the type of unit (knights as heavy cavalry have malus on their weapon skill since they can really charge in forest for instance
==> Each kind of unit has a bowskill (can be 0), weaponskill and defense skill).
- regent participating to the battle
- province has a castel or not (unit have various bonuses while fighting from the fortification area, ==> battlefield has 8 areas, 4 for defending contingents 4 for attacking contingents. 1st ones are the battlefield itself, 2nd ones are the fortification area (inside and ouside for the fool that attack the fortification), the reserve which is a zone out side the battle where you can push weak units if you don't want to loose them during the battle and the deadzone...)
- regents can be staked with a unit exe king Georges V is stake with an Heavy Cavalry (in this case we had his own statistics (that depends from his class(es) to 50% of the unit he's staked with (not a full unit since I consider that one as a free units of bodyguards)
- regents can have special bonuses depending on their class/level (can have up to 2 classes) bonus can be due to blood power and increase damage done in batlle ( bility is called deathblow) or reduce them (= invulnerabilty).
spell caster can also ave a chance to cast a free spell during battle to help.
That spell depends of the caster class and level (program doesn't allow you to choose the spell, you mage/priest will automaticaly try to cast the highest sspell he knows and he's allowed to cast - random generator so maby one battle you mage will cast a magic missile but previous one he casted a Charm unit spell (far more powerfull))

If somebody knows java i can send the source + database.
source is not done in good java since I adapted tye code based on my previous VB6 program so some part of the coding is not really object oriented (shame on me)

vota dc
04-24-2008, 01:30 PM
Phase 8:[/u] Play testing

[Obviously we play the game we made] Two months of testing(debate this in phase 1 or 2).


I'm available for this phase.

Mirviriam
04-25-2008, 02:34 PM
Awesome on the access db - those are just sql db's that don't require a full time admin nowadays.

We'll find a place for you to stick that - so we can pour over it. I'm going to try & get the wiki guys to post their standard entry mode so we can have a unified format for all our online data (wiki, this thing, future projects).

Maybe after we run the small test program we focus on a data base style that others can build off too? Then build our program on top of that format.

Arjan
04-25-2008, 04:53 PM
Awesome on the access db - those are just sql db's that don't require a full time admin nowadays.

We'll find a place for you to stick that - so we can pour over it. I'm going to try & get the wiki guys to post their standard entry mode so we can have a unified format for all our online data (wiki, this thing, future projects).

Maybe after we run the small test program we focus on a data base style that others can build off too? Then build our program on top of that format.

eerrr right.. have you any idea what you want exactly? i am kinda lost here.
before we do anything i suggest you take the time to write down everything for this project.

this aint simple and needs to be structured from beginning to the end.

below is an example of a so called Project brief from the Prince2 method. it will help you to start up this project.

once this is done we can move on the deepen out the business case and finally the project plan...

it might seem like alot of work (and yes it is!) but it is very needed if we were to do this and get every face in the same direction and know what is in and out of scope. (save alot of Yes..buts..) ...and foremost: control of the project!


Sample project brief:

Purpose:
[A statement of the purpose of the Project Brief. The following is a “standard format” that may be used or adapted by the Project Manager:]

This document has been produced to capture a “first cut” view of the scope, investment needed, dependencies on other projects and anticipated payback so that the constituent parts of the Project/Programme can be prioritised, funded and authorised.. The Project Brief will provide the basis for the Project Authority (Project Board) to decide to authorise the creation of the Project Initiation Document (PID).

Background:
[Identification of the source of the undertak¬ing and its sponsor. Any previous reports, documentation etc that might impact on the development.]


Objectives:
[Specifically what is required to be achieved by the project, expressed wherever possible, in measurable terms; it is often helpful to identify separate objectives for the project itself (eg: target dates, expenditure profiles) and the project outcome (what the end-product is required to deliver during its life) ].


Scope, Exclusions & Interfaces:
[The major areas, functions, processes etc to be addressed during the project - essentially what is “in” and what is “out”. A simple "scoping diagram" may be appropriate]


Outline Deliverables (Products):
[A list of the expected and required Deliverables/Products/Outcomes) that the proposed project must create or acquire.]


Constraints:
[Restrictions on time, resources, funding, and/or the eventual outcome - a statement of the "no-go" areas for the project.]
Assumptions:
[Similar to constraints but more “expectation” than “restriction”.]



Outline Business Benefits/Business Case:
[Write a brief summary (max 1 x A4) of the Business Benefits that are expected to stem from this project.]


Preliminary Risk Assessment:
[Provide a commentary on the main risks as perceived at this early stage. The Risk Assessment Checklist can be completed or the questions used as a list of topics to be addressed with regard to project risk]


Customer’s Quality Expectations:
[A brief statement on the “level” of quality the Customer is expecting – for example is the Product “customer-facing” and needing to be perceived as a “quality product” or is the output of the project intended for internal use only and some degree of non-conformity to requirements capable of being tolerated.]


Acceptance Criteria:
[A definition, in measurable terms, of what must be done for the outcome of the project to be acceptable to the Customer (see Appendix A1 – PRINCE 2 Manual).]


Outline Project Plan:
[A brief statement of the proposed start and finish dates, likely review points, frequency of updating the plans with “actuals”, and Team reporting arrangements.]


Review & Reporting:
[The frequency of review required by management. Management reviews(End Stage Assessments) will be related to significant events during the life of the project to commit resources and authorise progress, but their frequency will be influenced by the management review requirements stated here.]


Financial/Budget Requirements:
[State the preliminary budgetary requirements for the project]


Timing:
[Assuming no external dependencies, when should work start?]


Additional Comment:
[Add any additional information to be brought to the Project Authority’s/Project Board’s attention.

Rowan
04-25-2008, 09:43 PM
I don't know enough of all this programming stuff you guys are talking about to help (only having experience in VB and some of its derivatives). I do have some project management experience, however, and I want to back Arjan up on the necessity of really planning this stuff out and approaching it systematically and with discipline.

Someone mentioned Access. I was planning to continue dabbling in an Access DB I've been working on now that my time isn't so chewed up by grad work. However, what I had envisioned was really just an Access DB supported by a web portal. It looked to me like it could handle everything in BRCS. I'm not sure how extensive you wanted to make this project of yours, but I think Access can handle a table game or even a PBEM fairly well.

For a graphical representation of a future PBEM I wanted to run, I was planning on just using the Gorgon's Alliance editor and messing around with provinces, borders, roads, castles, holdings, etc. and then doing screenshots. Sure, it's limited in some respects, particularly limited to Anuire, but the screen map is a pretty basic, low-work method of producing graphics.

Vicente
04-25-2008, 10:33 PM
I also think that a good planning is fundamental to the success of the project. Specially defining the scope of the project and what are the goals and deliverables to be produced by it.

About technology, I wouldn't worry too much. Mostly anything the team agrees will be able to run the game unless it becomes incredibly ambitious.

Mirviriam
04-28-2008, 02:39 AM
Arjan:

That's the point of this thread- to get us to a place where we have a meeting about the project plan...it's all wide open to discussion. Once we have a meeting, we decide if this project needs it's own webspace/forum/irc room/everysingle detail possible on how we will accomplish this & what to be done.

I have a word document of my plan...I was hoping to get everyone's idea's from the meeting before I influence them.

Are you suggesting no meeting & just see I can get people to sign on to a project without having input?

Rowan:

I definitely like how simple access db's are, my only consideration is publishing it from the webportal. My experience is more with sql, but we can either import the access into sql later or just figure out how to host it for everyone to edit who needs to (sql allows multiple editors, I can't recall if access has or not ... been 8 years).

ggacura
04-28-2008, 02:53 AM
If you are considering a windwos client I would reccoment the XNA framework from Microsoft. I have been messing with it making a RTS game for about a year to so and it is working nicely.

Mirviriam
04-28-2008, 02:57 AM
I also think that a good planning is fundamental to the success of the project. Specially defining the scope of the project and what are the goals and deliverables to be produced by it.

About technology, I wouldn't worry too much. Mostly anything the team agrees will be able to run the game unless it becomes incredibly ambitious.

All of my plans are grand & my scheme's scare even myself in their audacity!

Though the first part of the test should be really basic. Maybe just make Endier, Spiderwood & another nation work with like 4 basic game actions. If we use inheritance it will be a simple matter to add in new game actions by the programmers & then create a webinterface or program that lets DM's make the rest of the continent.

Mirviriam
04-28-2008, 02:58 AM
If you are considering a windwos client I would reccoment the XNA framework from Microsoft. I have been messing with it making a RTS game for about a year to so and it is working nicely.

Thanks, I'll poke it next weekend - tell us about your RTS & how that's going?

Mirviriam
05-03-2008, 11:53 PM
I'll write exactly what I want for the first part of this test & have it up within a week hopefully. I do not really know the 3rd Edition rules so it will be in 2nd for speed's sake.

How deeply do we want to go for my plan? Scope/exclusions/technology or deeper into the pseudo-code, inheritance structure, datafile formats, object (if we use c++)/function listings?

AndrewTall
05-06-2008, 10:09 PM
I'll write exactly what I want for the first part of this test & have it up within a week hopefully. I do not really know the 3rd Edition rules so it will be in 2nd for speed's sake.

Ideally the system would have fairly minimal dependence on any of the D&D systems - the key aspect to the computer system is the domain ruleset, realm design, battles, etc. For that you can probably rely on a handful of 2-4e stats only and use a converter for whichever D&D ruleset is used (i.e. each non-weapon prof +2 on an action, each 5 skill points +1, etc on actions).

One possible goodie would be to have the lookup table for income and expenses to be in a readily editable format (like excel for example) with each user saving their preference as a 'campaign setting'. That would allow DM's to choose source income rules, add holding types (just have 2 slots for each type and have the spares set to zero RP/GB/etc in the standard) if they so desired.

The actions would then be fixed, outcome generators and bidding and so on, but the system would still allow people to tweak the system for their preferences.

I'd do the same with unit attack, defense, speed, morale etc - have a single success generator but allow units to be easily tweaked.

Mirviriam
05-07-2008, 05:50 AM
One possible goodie would be to have the lookup table for income and expenses to be in a readily editable format (like excel for example) with each user saving their preference as a 'campaign setting'. That would allow DM's to choose source income rules, add holding types (just have 2 slots for each type and have the spares set to zero RP/GB/etc in the standard) if they so desired.

One of the things I'm struggling to express is this idea you put there Andrew - except excel is too simple for what we need. Excel/access doesn't spread around the world instantly.

1) Programs write three things, a database, a database tool to fill in information, a program to use the information

2) Rest of non-programmers in birthright generate tons of content at their leisure for years to come (NPCs, provinces, domains, items, army units, etc)

3) When a new ruleset comes out, a DM uses the tool to right the ruleset adaption. Then slight changes from programs to make sure program works.

4) I forgot...

5) Eat tons of cotton candy.

6) Pointless, we have the cotton candy.

7) Take over the world anyways, because somewhere out there someone else is making more cotton candy & it might be better than what we have.

Update: I reread the BCRS playtest again - took more notes, working on outline of what I want for the mini-test. All other status updates on hold till we figure this out. Next update Wed or Thursday after my finals (24 credits are killing me :))

Vicente
05-07-2008, 07:56 AM
I wouldn't go for a spreadsheet or a database for the game rules. A simple XML or custom plain text format should do. See PCGen for example, they use text files to load the rules, characters,... Although they have a fairly complex syntax for those files.

Adding easy to edit files encourages non-technical people to contribute writing those rules files (and helps "modding" the game as it's easy to customize rules).

XML or plain text files are also easier to parse and to deploy.

Magian
05-07-2008, 08:55 AM
So we are looking at the domain structure. Using the BRCS for an outline of what is needed would be a good idea. Bringing the domain rules into the program seems to be the main goal. If you want some ideas on a pre-existing program Birmail could give you a good idea of how to organize the program or at least take into consideration all the different aspects that should be considered. Link below.

http://sourceforge.net/projects/birmail

The toolbar on top of the program shows the different types of data. There is the database that has all the realm and character info that is going to be editable per campaign.

Manual data has all the particular data items that make up a realm that is selected into the database when making characters, realms, diplomatic links, tributes and such.

The static data really doesn't affect much of the realms its mostly fill in stuff to consolidate notes. This is where the area of 2nd AD&D, 3E, and 4E stuff would come in. Also there is stuff that is BR specific that wasn't used in the database for modifying anything. Again pretty much notes even if its a bloodline.

There is an Actions menu that goes into the actual program that uses all the data for running the income / action phase of the game. This is where you'd need the actions, perhaps a basic kind of action format could be used cause there are some actions that are allowed and others that are not as per the campaign. I'd like to see some way I as a player could create my own actions with a tool editor for this. Also this is where all the things that function at the income / action level are. So in Static data there are the realm spells, but those are just notes. Here in Actions are the realm spells as they affect the domain level of play within the program. So if we need to be redundant like that its understandable for simplicity. This would include any modifiers like skills, blood abilities, spells, and other domain effects that can be factored into the equation outside of the core domain setup itself.

I really believe dissecting this program a bit may be helpful to see what has been done, and how to improve upon it for this current project. In the least it would give an idea of what will need to be mapped out. There are many functions like an editable map, website output, mailing report, and dice roller all of which are pretty much built in and a function of the action bar. Heck I remember creating a rivers system to determine what hull size each river could support for ships all the way up to the source.

Anyway, I know this is a bit of a messy post I hope you can navigate it. Oh and if anyone has the BR viewer program would ya let me know in PM or something I'd really like to check it out. Ideally the editing system would be simple like BR viewer, or at least the proposed BR viewer 2.0.

Mirviriam
05-12-2008, 03:29 AM
I won't be able to do anything with the pbem till after finals are up. Anyone have an old campaign still up & hosted that I might be able to look through in a week?

Mirviriam
05-28-2008, 05:28 AM
I'm making a test game on my own right now - end of June I want to come back to this project.

Capricia had a nice looking webinterface for a pbem, I want to see what they got on the back end before I try doing anything else on this project. More thoughts till that time...

Generation PBEM's off the websites like Capricia's look good - maybe more automation & less interference from DM's to make being a DM easy?

The question of how people are handling sieges has always bugged me too - if the armies choose not to meet in the field of battle - but rather in siege do you wait till the enemy reduces the fortification to lvl 0 & then have a battle?

I still need time to properly read thru the wiki too :)

Vicente
05-28-2008, 09:05 AM
The question of how people are handling sieges has always bugged me too - if the armies choose not to meet in the field of battle - but rather in siege do you wait till the enemy reduces the fortification to lvl 0 & then have a battle?

Total War games handle sieges more or less like that. When you siege a city you can build siege equipment (rams, siege towers, ladders,...) and storm the city with it. Or you can wait X turns till the city starves (you win automatically then). The defender can try to break the siege with the sieged army or with a relief army from the outside.

It's simple and it works pretty well.

vota dc
06-03-2008, 06:49 PM
If it is possible a good idea should be to introduce territorial claims and "national provinces" in the game like Hearts of Iron 2.For example Alamie should have little dissence in the original duchy and in Tuornen (if the rulers of Tuornen are all dead or recognizes Alamie's right on Tuornen) but if Alamie annex any province of Mhoried should have a LOT of dissence.Race should alter the dissence,for example Sufhanie is claimed by Alamie but the goblins of the province aren't agree with that!