You can subscribe to this list here.
2003 |
Jan
(4) |
Feb
(17) |
Mar
(15) |
Apr
(1) |
May
(12) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <ben...@id...> - 2004-05-21 08:46:32
|
Dear Open Source developer I am doing a research project on "Fun and Software Development" in which I kindly invite you to participate. You will find the online survey under http://fasd.ethz.ch/qsf/. The questionnaire consists of 53 questions and you will need about 15 minutes to complete it. With the FASD project (Fun and Software Development) we want to define the motivational significance of fun when software developers decide to engage in Open Source projects. What is special about our research project is that a similar survey is planned with software developers in commercial firms. This procedure allows the immediate comparison between the involved individuals and the conditions of production of these two development models. Thus we hope to obtain substantial new insights to the phenomenon of Open Source Development. With many thanks for your participation, Benno Luthiger PS: The results of the survey will be published under http://www.isu.unizh.ch/fuehrung/blprojects/FASD/. We have set up the mailing list fa...@we... for this study. Please see http://fasd.ethz.ch/qsf/mailinglist_en.html for registration to this mailing list. _______________________________________________________________________ Benno Luthiger Swiss Federal Institute of Technology Zurich 8092 Zurich Mail: benno.luthiger(at)id.ethz.ch _______________________________________________________________________ |
From: Ben K. <ben...@it...> - 2003-05-26 05:11:41
|
Mathieu , Do you still have a copy of the techlists i send you . Had a bad sector and Lost all my email :-( Regards , Ben |
From: Ben K. <ben...@it...> - 2003-05-20 02:53:59
|
<snip> > > >Only issue here is they work differently .. An armour unit with > tanks in a > >cave may still have guys with rifles , so is effective ( though > less so) and > >still has mouths to feed. A ship which is mothballed is a dead hulk. > > > >In game terms mothballing the tanks in an armoured unit means some of the > >amour components ( items) are no longer active .. With a ship > unit the whole > >unit becomes inactive. > > I still think that one can mothball a tank regiment unit :: all huys are > removed > the ionly thing left are the tanks themselves... no mouth to feed > > but I understand the issue > > if one make a unit like > > > StandardArmyUnit = > > InfantryRegiment // 1000 rifle mens > TankDivision // 500 tanks with personnel > > what is left after a mothball : tank hulls and riffles ??? Actualy an armoured unit may look like this Armoured Unit (size 125 ) - Components Medium Tank hull (crew 4) , 10 ton ICE , 128 mm gun , 2 * MG , combat sensors I , 3 * 10 ton steel armour, 4 * Rifles. (Crew will be 500. ) While in the long term I may allow mothballing at this points it is too much of a pain. One thing you may note is that when the Unit is stowed or raided with surprise "heavy equipment" may not be used , this would be similar to mothballing . So when there ship is bordered the unit is still somewhat usefull if you dont have the rifles they will be massacred in a surprise command raid or boarding. Ok I will put the order in but it will be inactive at this point. > > > > > > > > > > > > - transport(do they never carry anything? what about > > > goods(possibly need > > > > > protected supplies to a hostile planet/area) or artifacts > or heros?) > > > > > > > >Thats an interesting point the way I see it transport would be > > > done by ships > > > >acting on the armies . Again as armies are confined you will > > > need to use a > > > >fleet to move stuff. > > > > > > > > > - lay minefield (why not, sacrifice production potential > for defense > > > > > against landings) > > > > > > > >These minefields are space based I dont envisage ground > based units could > > > >lay space based mines. > > > > > > they can lay mine fields on ground in prevision of ground combat > >This would be a mine component as part of an infantry unit and > would be done > >automatically as part of the combat phase ( which can be 2 months - 20 > >years) . > > > > here I do not understand > > how can it be part of combat ??? Ground Mines ( not space ones) would only be activated when that unit is attacked. This occurs in the combat phase and the mines can be asumed to be layed ( if there is no surprise). > what is combat phase ??? is it a real-time phase ?? No , in multi player mode that I am starting with there is NO real time phases ( except transfers & disbands) . You can only give orders and the processing computer executes them all. In single player mode we may add movement during the turn , but not at present. > it seems not --> a 2 month combat phase ?? a 20 year combat phase ?? > when I play 4X I feel personnaly always in combat phase !!! 1 turn in the game will represent 2-3 months to 20 years. It will start out at 20 years but drop later when certain techs are achieved. There may be a number of ground combat phases but I will start with 1. > > laying mines take a long time and you may want to do it many time > before any combat occurs and personnaly if I was an infrantry guy I would > refuse to lay mine during a combat ! The benefit of mines is most during mobile combat ...Anti tank mines especially were /are used heavily to secure the advance and hinder counter attack. Pre prepred mines are easily defeated because offensives plan for them , exploding wires , flailers , scouts clear paths etc. Besides in a 3 month - 20 year turn you have plenty of time to lay the mines , they are just asumed to be there for combat. Also remember 1 region in the game is the size of the US and much bigger than europe . Ben |
From: Mathieu R. <mat...@im...> - 2003-05-19 14:43:23
|
A 22:32 19/05/2003 +0800, Ben Kloosterman a =E9crit : > > > > Just a thought but why cant armies to the things fleets can do. ie > > > > > > > > - armies can merge (or is there a max of only 1 on a planet?) > > > > > >There can be more per planet but they dont move too much . > > Merging would be > > >done by the player in the UI eg Transfer all units and then scrap. > > > > > > > - armies could mine (maybe mobile miners produce much less > > but can evade > > > > bombardment/attacks better) > > > > > >Units in aremies mine automatically ( unless the army is on a Do= nothing > > >order) with fleets I thought you would want to specify whether you= would > > >mine. > > > > > > > - they can be mothballed(scrap those tanks) > > > > > >Mothballing is different from scrapping , tanks would not be valuable > > >enough. There is a scrap army order. I only want ships to be mothballed > > >similar to today where the Navy is the main one who Mothballs. > > > > I agree with Martin, a tank division can mothball (just store the > > tanks in > > a big cave) > >Only issue here is they work differently .. An armour unit with tanks in a >cave may still have guys with rifles , so is effective ( though less so)= and >still has mouths to feed. A ship which is mothballed is a dead hulk. > >In game terms mothballing the tanks in an armoured unit means some of the >amour components ( items) are no longer active .. With a ship unit the= whole >unit becomes inactive. I still think that one can mothball a tank regiment unit :: all huys are=20 removed the ionly thing left are the tanks themselves... no mouth to feed but I understand the issue if one make a unit like StandardArmyUnit =3D InfantryRegiment // 1000 rifle mens TankDivision // 500 tanks with personnel what is left after a mothball : tank hulls and riffles ??? > > > > > > > > - transport(do they never carry anything? what about > > goods(possibly need > > > > protected supplies to a hostile planet/area) or artifacts or heros?) > > > > > >Thats an interesting point the way I see it transport would be > > done by ships > > >acting on the armies . Again as armies are confined you will > > need to use a > > >fleet to move stuff. > > > > > > > - lay minefield (why not, sacrifice production potential for defense > > > > against landings) > > > > > >These minefields are space based I dont envisage ground based units= could > > >lay space based mines. > > > > they can lay mine fields on ground in prevision of ground combat >This would be a mine component as part of an infantry unit and would be= done >automatically as part of the combat phase ( which can be 2 months - 20 >years) . here I do not understand how can it be part of combat ??? what is combat phase ??? is it a real-time phase ?? it seems not --> a 2 month combat phase ?? a 20 year combat phase ?? when I play 4X I feel personnaly always in combat phase !!! laying mines take a long time and you may want to do it many time before any combat occurs and personnaly if I was an infrantry guy I would=20 refuse to lay mine during a combat ! > > > > > > > > - patrol (look for those pesky spies (or enemy remote miners??) > > > > > >This will be more of a combat order , armies are not really moble= enough. > > >Patrol does and intercept automatically , > > > > I still do not see why they cannot patrol =3D> they patrol and engage > > automatically > > execpt the enemy force is too big ? (should be the same for space= fleets) > >I just dont see the point 95% of the time they will be the only thing on= the >planet . To do this you would need to add some logic with regions etc for >very little gain. If you occupy a location you will defend automatically , >if you move to another province you will be attacked if an enemy unit= claims >it. ok for that point > > > > > > > > > > > > > > basically, i am for option 1 - keep it simple as they really > > are not very > > > > different. > > > > > > > > no specific opinion on that > > it seems to me that there is no difference between armies and > > fleet except for > > their moving "plane" > >This is pretty much the case. Though orders will be a little different . Im >not sure whether this movement will make us put lots of conditions in eg > >If ( army ) && moveOrder =3D SpaceBased > Ignoreorder > >Ben > > > > >------------------------------------------------------- >This SF.net email is sponsored by: If flattening out C++ or Java >code to make your application fit in a relational database is painful, >don't do it! Check out ObjectStore. Now part of Progress Software. >http://www.objectstore.net/sourceforge >_______________________________________________ >Cosmos2-code mailing list >Cos...@li... >https://lists.sourceforge.net/lists/listinfo/cosmos2-code Mathieu ROGER http://www-timc.imag.fr/Mathieu.Roger/ |
From: Ben K. <ben...@it...> - 2003-05-19 14:31:56
|
> > > Just a thought but why cant armies to the things fleets can do. ie > > > > > > - armies can merge (or is there a max of only 1 on a planet?) > > > >There can be more per planet but they dont move too much . > Merging would be > >done by the player in the UI eg Transfer all units and then scrap. > > > > > - armies could mine (maybe mobile miners produce much less > but can evade > > > bombardment/attacks better) > > > >Units in aremies mine automatically ( unless the army is on a Do nothing > >order) with fleets I thought you would want to specify whether you would > >mine. > > > > > - they can be mothballed(scrap those tanks) > > > >Mothballing is different from scrapping , tanks would not be valuable > >enough. There is a scrap army order. I only want ships to be mothballed > >similar to today where the Navy is the main one who Mothballs. > > I agree with Martin, a tank division can mothball (just store the > tanks in > a big cave) Only issue here is they work differently .. An armour unit with tanks in a cave may still have guys with rifles , so is effective ( though less so) and still has mouths to feed. A ship which is mothballed is a dead hulk. In game terms mothballing the tanks in an armoured unit means some of the amour components ( items) are no longer active .. With a ship unit the whole unit becomes inactive. > > > > > - transport(do they never carry anything? what about > goods(possibly need > > > protected supplies to a hostile planet/area) or artifacts or heros?) > > > >Thats an interesting point the way I see it transport would be > done by ships > >acting on the armies . Again as armies are confined you will > need to use a > >fleet to move stuff. > > > > > - lay minefield (why not, sacrifice production potential for defense > > > against landings) > > > >These minefields are space based I dont envisage ground based units could > >lay space based mines. > > they can lay mine fields on ground in prevision of ground combat This would be a mine component as part of an infantry unit and would be done automatically as part of the combat phase ( which can be 2 months - 20 years) . > > > > > - patrol (look for those pesky spies (or enemy remote miners??) > > > >This will be more of a combat order , armies are not really moble enough. > >Patrol does and intercept automatically , > > I still do not see why they cannot patrol => they patrol and engage > automatically > execpt the enemy force is too big ? (should be the same for space fleets) I just dont see the point 95% of the time they will be the only thing on the planet . To do this you would need to add some logic with regions etc for very little gain. If you occupy a location you will defend automatically , if you move to another province you will be attacked if an enemy unit claims it. > > > > > > > > > basically, i am for option 1 - keep it simple as they really > are not very > > > different. > > > > > no specific opinion on that > it seems to me that there is no difference between armies and > fleet except for > their moving "plane" This is pretty much the case. Though orders will be a little different . Im not sure whether this movement will make us put lots of conditions in eg If ( army ) && moveOrder = SpaceBased Ignoreorder Ben |
From: Mathieu R. <mat...@im...> - 2003-05-19 12:23:35
|
A 15:24 19/05/2003 +0800, Ben Kloosterman a =E9crit : > > -----Original Message----- > > From: mar...@au... > > [mailto:mar...@au...] > > Sent: Monday, 19 May 2003 2:36 PM > > To: ben...@it... > > Subject: [Cosmos2-code] Groups > > > > > > Just a thought but why cant armies to the things fleets can do. ie > > > > - armies can merge (or is there a max of only 1 on a planet?) > >There can be more per planet but they dont move too much . Merging would= be >done by the player in the UI eg Transfer all units and then scrap. > > > - armies could mine (maybe mobile miners produce much less but can evade > > bombardment/attacks better) > >Units in aremies mine automatically ( unless the army is on a Do nothing >order) with fleets I thought you would want to specify whether you would >mine. > > > - they can be mothballed(scrap those tanks) > >Mothballing is different from scrapping , tanks would not be valuable >enough. There is a scrap army order. I only want ships to be mothballed >similar to today where the Navy is the main one who Mothballs. I agree with Martin, a tank division can mothball (just store the tanks in= =20 a big cave) > > - transport(do they never carry anything? what about goods(possibly need > > protected supplies to a hostile planet/area) or artifacts or heros?) > >Thats an interesting point the way I see it transport would be done by= ships >acting on the armies . Again as armies are confined you will need to use a >fleet to move stuff. > > > - lay minefield (why not, sacrifice production potential for defense > > against landings) > >These minefields are space based I dont envisage ground based units could >lay space based mines. they can lay mine fields on ground in prevision of ground combat > > - patrol (look for those pesky spies (or enemy remote miners??) > >This will be more of a combat order , armies are not really moble enough. >Patrol does and intercept automatically , I still do not see why they cannot patrol =3D> they patrol and engage=20 automatically execpt the enemy force is too big ? (should be the same for space fleets) > > > > basically, i am for option 1 - keep it simple as they really are not= very > > different. > > no specific opinion on that it seems to me that there is no difference between armies and fleet except= for their moving "plane" >Ok - Opinion noted. > >Ben > >< snip > > > > > >------------------------------------------------------- >This SF.net email is sponsored by: If flattening out C++ or Java >code to make your application fit in a relational database is painful, >don't do it! Check out ObjectStore. Now part of Progress Software. >http://www.objectstore.net/sourceforge >_______________________________________________ >Cosmos2-code mailing list >Cos...@li... >https://lists.sourceforge.net/lists/listinfo/cosmos2-code Mathieu ROGER http://www-timc.imag.fr/Mathieu.Roger/ |
From: Ben K. <ben...@it...> - 2003-05-19 07:24:09
|
> -----Original Message----- > From: mar...@au... > [mailto:mar...@au...] > Sent: Monday, 19 May 2003 2:36 PM > To: ben...@it... > Subject: [Cosmos2-code] Groups > > > Just a thought but why cant armies to the things fleets can do. ie > > - armies can merge (or is there a max of only 1 on a planet?) There can be more per planet but they dont move too much . Merging would be done by the player in the UI eg Transfer all units and then scrap. > - armies could mine (maybe mobile miners produce much less but can evade > bombardment/attacks better) Units in aremies mine automatically ( unless the army is on a Do nothing order) with fleets I thought you would want to specify whether you would mine. > - they can be mothballed(scrap those tanks) Mothballing is different from scrapping , tanks would not be valuable enough. There is a scrap army order. I only want ships to be mothballed similar to today where the Navy is the main one who Mothballs. > - transport(do they never carry anything? what about goods(possibly need > protected supplies to a hostile planet/area) or artifacts or heros?) Thats an interesting point the way I see it transport would be done by ships acting on the armies . Again as armies are confined you will need to use a fleet to move stuff. > - lay minefield (why not, sacrifice production potential for defense > against landings) These minefields are space based I dont envisage ground based units could lay space based mines. > - patrol (look for those pesky spies (or enemy remote miners??) This will be more of a combat order , armies are not really moble enough. Patrol does and intercept automatically , > > basically, i am for option 1 - keep it simple as they really are not very > different. > Ok - Opinion noted. Ben < snip > |
From: Ben K. <ben...@it...> - 2003-05-18 03:55:10
|
Im sorting out units and am after some comments on what people think of groups. At present I have groups and Fleets , with fleets inheriting from groups but this is not a very good design. Groups have these requirements (If they are space capable they are termed fleets otherwise armies. ) Armies can do the following - Disband - Move to location or other group - Do nothing - No order - Transfer to other player Fleets can do the following - Disband - Move to location or other group - Do nothing - No order - Transport ( load / unload) - Lay minefield - Remote Mining ( ?) - Patrol / Intercept ( Patrol aranges an intercept , an intercept executes on the same turn) - Merge with other fleet - Transfer to other player - Mothball In addition to the standard orders groups have a combat order/ stance and a production queue ( if they have production capabilities) . I see 2 options Option 1. Group covers fleets and armies , the state can be checked whether it is a fleet or an army . Option 2 . Group is an abstact class and Army and Fleet are inherited classes. Just interested in peoples opinions , at present it is coded like option 1 but it may not be best . What does everyone think? Ben |
From: Ben K. <ben...@it...> - 2003-05-16 02:41:16
|
> -----Original Message----- > From: Mathieu Roger [mailto:mat...@im...] > Sent: Friday, 16 May 2003 1:08 AM > To: bkl...@us... > Subject: Do unit can receive orders > > > I have just thought the following: > > you want to avoid burden micro managment ans you are perfectly right > > I think that for homogeneity of program (and simplicity too) > unit should be able to receive orders > > let's do the following: > > when built, a unit goes automatically into a fleet or a colony or > a storage > depending of its type... It goes into a Group ( a group is a fleet in space , and Army or Colony on the ground depending on whether it has a col unit). If there is no fleet it will be put in a new fleet ( which would go to the nearest naval base again to reduce MM) . Only groups can move , receive orders and have production queue ( see below) this makes things much more simple. I want there to be a lot of units but I dont want players burdoned with them. > > --> it would be the default behaviour (that could be locally be switched > off by > the player) > > --> it let us allow micro managment There will still be plenty of MM - Stars uses this concept and when you have 100 fleets it can get very MM heavy. Units automatically generate points but can not be given orders by players. These points are automatically executed eg Research , Terraform , Fight , Produce etc . If you dont want them to do soemthing move them to a group and set the group to do nothing . > > > By the way I had an idea about orders: > > provide a "scripting language" for orders > [just remember of space empire 4 in which you can have a sequence > of orders > that > can be set "to be repeat" --> it is exactly instruction sequence and loop > in programming > language] Absolutely is Stars you have waypoint 0 ( where you start ) and a number of waypoints for orders . At each waypoint you can do the following transport Colonise Remote Mining Merge with Fleet Scrap Fleet Lay MineField Patrol Route Transfer to other player 3 of these have other options eg route goto next waypoint transfer - eg which player Transport for each mineral type + fuel You can Load All available Unload All Load exactly x Unload exaclty X Fill up to % wait for % ( will wait until that % has been reached) Load Optimal Set Amount to x Set waypoint ( target ) to x . You can also repeat and you have up to 4 pre programed orders ( I use a couple to set planets to the breakpoints and skim of the rest of the pop , I also use one to set Mins to 1000 that way I take excess mins to where they are needed , but not strip the source). The only thing I dont like in the stars one is it is impossible to repeat an order at 1 waypoint so I cant have a ship in orbit taking the pop of a planet . Users dont really want to write scripts but 4 or so preporgramed orders could be more complicated scripts. Most of the above options would be needed though. > > It does not mean that the player will be obliged to use it, through UI we > can manage > to keepsimple uses of orders simple to "state" > > the order for a production unit will be > > newship = produce(ship-design 27) > giveOrder(newship, rallyFleet(fleet 1)) Both production units and colonies can produce but they give a production queue to their group . The group does the build ( colonies still do automated things eg grow) . The group would simply have the order UnitDesign design = empire.Designs[xx]. AddToQueue(design , amount ) When producing the group would work its way through the queue . This also allows me to do one thing which I want to do and that is system queues. We should / could add the queues a bit smart, these are like in stars where if a queue starves of minerals they go to the next item. These queue belong to systems with a colony in them . They basically allow a player to control everything from the main map. One of the elements in the queue is <local Colony Queue> that way players can order things after the colony has finished its production or before in case of emmergencies. There should also be a number of standard queue eg mining planets etc these are used as default for that planet type . These could be edited by players- they are a big help for AI's. PS Here is a doc I have for ideas on reducing MM some are a little bit old > > !!!! > > > Mathieu ROGER > http://www-timc.imag.fr/Mathieu.Roger/ > > |
From: Ben K. <ben...@it...> - 2003-05-15 06:21:29
|
Have just posted the latest code update as mentioned We have about 60,000 lines of code ( as well as about 16,000 lines of comments and 25,000 lines of Xml Data). And except for the UI things are becoming easier ( because when you want to do something the code is alread there) . Update Custom Controls a.. Added ImageStripViewer and ImageListBox to display Image lists b.. Fixed some bugs and improved the shading of the Tempurature and Pressure Guages. System FrameWork Added an List copier Made some changes to the Random About classes. Data Added new Data Empires including Logos and a dummy ships Resource Library Added NameFile functionality Added text file functionality , it can now read text files instead of Xmls Cleaned up the directory stuff and fiex up some bugs Core Fixed some bugs with moon generation Fixed a bug with planets tempurature ( C and K ) and added pressure and temperature functions Cleaned up the Item classes Added new Tech classes Characters - fixed up the basic character classes and added a collection class and character generation routines UI Pulled out the main Init code into a new class and pre loaded some things . User Controls Added System and Planet Sumamry Controls Added a grid and get nearest methods to the map Added Bitmap strips with a weak reference for better performance Cleaned up Control Bar and removed the background Image. Cleaned up UI so binary systems dont overlap and display an uggly brown ring. Added a Pressure / Tempurature display control ( similar to MOO3) Added a Minerals display control Added a new Empire Wizzard . This one is working well and does 90% of what will be in the final . Problems Research UI control not functional Equipement display / edit control not funtional Units comming soon I hope. Regards , Ben Kloosterman PS: Still looking for a volunteer to help me with the UI work . |
From: Ben K. <ben...@it...> - 2003-05-15 02:46:51
|
Thanks for the tech code Matthiew , I have integrated it into core and it compiles now. I Have about 40 errors in the UI which I should be able to clear by the end of the day. I will then upload the updates to SF. Some comments. 1. I have added an Init function in Cosmos2 Init to init GameData. Is there any data yet ? 2. Empire Control uses a hybrid between going through the wrapper UIEmpire and direct via Core.Positions.Empire. Not clean but I dont have time to fix it and consider the ramifications. 3. I saw this code . Now the compiler complains that there is no need for the is as it is always of that type. I must also add that "is" and "as" are nice in the OO world but be very carefull with them esecially for operators ( which can end up up everywhere) as they run very slowly. public static bool operator==(UIResearchStatus x, UIResearchStatus y) { if (x is UIResearchStatus) { if (y is UIResearchStatus) return x.empire == y.empire ; else return false ; } else { // x == null if (y is UIResearchStatus) return false ; else return true ; } } |
From: Ben K. <ben...@it...> - 2003-05-14 05:44:48
|
> -----Original Message----- > From: cos...@li... > [mailto:cos...@li...]On Behalf Of Glenn > Nilsen > Sent: Tuesday, 13 May 2003 3:50 PM > To: cos...@li... > Subject: [Cosmos2-design] Some cool idea about Nebula, Black hole, Space > gate, Space "High Way" ! > > > I have some cool ideas about nebula, black hole, space > gate, space "high way". Sound good keep them comming > > Nebula : > > We can hide the a fleet in the nebula. (Greatly > reduced sensor ranges) Will definetly do this. Ships in a Nebula will have an increased cloaking value - Also shields will be reduced in combat . > If we can gas mine nebulas, then we most have some > ships how to do that, then we have some actual use > from nebula. Fuel scoops will be much more efficient. They can refuel . The only gas in the game will be air as for most races colonies will not be on compatible planets and need to be supplied. > > Black hole : > this is a funny one, if your fleet is going in to a > Black hole then you will not know here they are going > to, but after they have left the black hole, you will > find your fleet. High risk of damages. At this point they will be visable and ships going in that area will have their course slightly altered ( eg more fuel ) . This may result in collisions but more likely it will just take another turn. Combat could be interesting though. > > Space gate : > > This is a good thing to have if the enemy attacks a > friends and your fleet can help him quickly. Also for > travel between your own systems. (Expensive, > high-tech. Have to be built close to something with > gravity? (planet/star) ) Yep expensive and high tech - may also have very high tech gates which are just used by units eg not ships ... They are not usefull for attacking though (except a backstab on an ally). I will limit the total mass which moves through it per turn. > > Space highway: > > Something like the railways in Civilization: you use > time and resources to build a link between place A and > B, letting ships travel faster (something around 3x > normal speed?). The most realistic would be if it was > possible to attack it, disrupting traffick at the > destroyed point. (OTOH any ships that enter would > appear right among the attackers, making it risky, but > possibly profitable) No Im against this , star gates( custom worm holes) will help somewhat. I saw it used in MOO3 and SEIV ( though at high tech you can get around this) ) but I feel the Stars free form creates much more interesting strategy . The attacking opportunities are much greater and you have skirmishes and sensors become important. With highways if you are more powerrfull your fleet just blocks the choke point. It also allows nice minefields and cloaking . Also transports need to be protected or they can be skirmished ...and if a vacuum colony does not get their air and suplies they die after a while ... much more interesting :-) Supply is already a huge problem in space and hence bases and colonies are critical. Along with fuel and travel times defenders have enough advantages and I dont want to anymore by creating choke points. The Colonies and bases are the critical target similar to WWII blue navy strategy with bases being key. You can defend some of them but if you break up your fleet to defend all you are susceptable to a big attack on a single point. The earlier techs will not allow practical interstellar travel and will just allow you to explore and colonise your system. I want to simulate a power like US , China etc expanding from earth ( and one of the scenarios will have a number of players based on earth) these will settle the system they are in and develop. At a certain point players can develop Hyper drives or warp drives and begin interstellar travel. Interstellar probes and Generation ships are possible earlier but Im not sure on this ( it would mean the gap to Hyper drives is larger) In the early years turns will correspond to about 20 years , this will reduce as certain techs are obtained to about 3 months per turn at the end. This WILL impact production but higher techs will increase this hence your production (per planet) will not increase much in most games ( I have also considered longer peace turns and quick war turns but I am not sure how to work this in a multi player context eg if 2 players are going for it everyone else is slow...) . I really want to show the fact that once interstellar war starts with Warp drives you will not be able to build much , hence you need to plan and rely more on diplomacy. Ben |
From: Ben K. <ben...@it...> - 2003-05-10 03:08:53
|
Here is the default map view so far view at 1024 *768. (scan levels are turned of eg with full information) . Objects of note Message box - The message box appears at the bottom and is transparent except for the text . This can be hidden allong with the Empire view bar on the left. Grid Lines - Can be turned of , but are usefull . Control Bar on the left is used for Navigation and changing the map mode . An empire and race has been loaded ( though I have not done the Empire bar yet as I will do this after units) . The system view shows planets ( red for too hot , green for good , blue for too call). This only has one Panel . When viewing ships a 2 and 3rd panel will show which are used for the target and orders. I am now moving onto displaying units and moving units. Any comments ? Ben |
From: <bkl...@ya...> - 2003-04-24 02:53:47
|
Not much to say really - had a few contracts to do so only averaged about 3 hrs per day . Things are progressing but with just me doing the UI things are slowing - if anyone can help out more with the UI it would be appreciated. On a positive note the UI will be better and more functional than all others of the genre eg Stars , Moo3 and Stellar Legacy ( the last 2 are new games and the UIs are pretty bad) . Though if I dont get significant UI coding help it will still be pretty ugly ( though better than Stars) . I expect most features to be able to do key features for a turn ( give orders , view objecs etc) in about 4 weeks ( this is 4 weeks behind schedule as explained above) , this depends on Matthew getting the tech and Unit code done within 2 weeks. After this we will begin to do the turn generation and slowly add features as well as pretty things up. Ben __________________________________________________ Yahoo! Plus For a better Internet experience http://www.yahoo.co.uk/btoffer |
From: Ben K. <ben...@it...> - 2003-03-14 15:54:36
|
Ok , Let us know if you have some more time on your hands. Ben > -----Original Message----- > From: cos...@li... > [mailto:cos...@li...]On Behalf Of Steve > Brailsford > Sent: Friday, 14 March 2003 10:33 PM > To: cos...@li... > Subject: Re: [Cosmos2-code] RE: Questions > > > Im sorry but Im going to have to drop off the project, at least > for a while. > I just started a new job and although I'd like to be involved, I > just don't > have the time to commit to it. > Steve > > ----- Original Message ----- > From: "Ben Kloosterman" <ben...@it...> > To: "Cosmos2-Code" <cos...@li...> > Sent: Friday, March 14, 2003 2:45 AM > Subject: [Cosmos2-code] RE: Questions > > > > Keep the questions comming . I posted this to the list as other > people may > > have the same questions. > > > > Ben > > > > > Hello Ben, > > > > > > I have some (many ;)) questions. > > > 1) EmpireTreeView: How should I access nodes? What information > > > the nodes will contain? What does the Tree represents? Which > > > variables should be contained in the Tree? Can player switch > > > between Empires or this is a list of Empires for MP game? > > > > EmpireTreeView on the UI . This only contains the playing > empire and will > > contain the Races of the Empire and all his Groups( and > contained Units) > as > > well as characters allowing quick navigation of your possessions. > > > > > 2) Game: IS our game MP-oriented? > > Single and MP . MP will probably be first as it allows better > play testing > > and humans teach us how to build sneakier AI's. At the moment we are > trying > > to get 1 Empire getting a turn done - we will then get MP on one machine > > done by doing each turn for a number of players and then doing a Gen. > > > > > How many players will there be > > > online? > > Probably 1 - 16. I think this is set in the Empires class. > > > > > Will there be any AI? > > Yes , but not just single player even in multiplayers when players drop > > out they will be relaced by an AI. > > > > > Will there be diplomatic relations > > > between Empires? > > Yes > > > > > What will it include in? > > Diplomatic options need to be designed ( but will probably have to wait > > for a bit more of the game to be active). One think of interest > though is > a > > character may negotiate a Peacy treaty which will last a certain time. > > > > > Where the information > > > about Empires will save: on HDD or on an Internet Server? > > Good question . On the HDD of the players and the server. The > server will > > generate new files to download for each player. The UI then reads those > > files. > > > > To give you an idea stars uses this procedure. The game has an .XY file > > which is the map , which each player downloads at the start of the game. > > Each empire than has a .m file representing all his assets and there > > positions as well as map items they can see ( mines , enemy ships and > > salvage). Then there is an .h file which has part of the map the player > has > > last seen ( a history) . When a player submits a turn he generates an x > file > > which is basically an order file and is pretty small. The > server then uses > > the old m files and the orders to generates a new m file and mails it to > the > > player. Single player works the same but the files are on the > same machine > > and the generation is automatic. > > > > I will do something similar but will keep map and scan information with > the > > map class eg (StarSystems) but I have to work out how to handle map > updates > > each turn without resending the whole map. This will need to be fleshed > out > > but like I said the first target is to be able to play the first turn. > > > > I would hope to have a client that autodownloads and uploads > when a turn > > gen is done ( which could be every 2 minutes or even every 2 days) but > this > > is not a priority yet and could be written in less than week. > > > > > > > Whar does > > > double_click on EmpireTree represents: will it change current > > > Empire or do smth. > > No . It will select the item clicked on ( Unit or character) > and recentre > > the map to that point. > > > > > else? What is the Main Screen Window( Test2 )? > > > > Testing - Devs can put extra stuff under Test2 . It is not used anymore. > > > > > Will it be the main window or is this optional? What's the use of > > > Empires class if only ActivePlayer.EWmpire represents the real > > > EMpire? > > > > ActivePlayer.Empires has been replaced this week by > UIEmpire.Empire. The > > reason is that UIEmpire.Empire get the current players > possessions and is > > used by the UI. When a tick occurs that a game month has passed > Core will > > generate the changes by going through the orders of all the empires and > > executing the changes. The other reason is when you see the > ships of other > > Empires you will need to get basic information from the Empire class to > get > > logos colours etc , the detailed information will not be present so > Empires > > need a remote empire and an active empire mode ( same but less > information > > is available) . > > > > > How do I access the TechList of the Empire, what does it > > > represents? > > > > It represents the Technology levels than an Empire has achieved > /posseses. > > This is being replaced by some different classes but it is > pretty similar. > > > > > > > 3) XML: Can I crypt Xml files? For example for saving password. To > > > save Empire I've simply made Empire class Seralizable, am I on the > > > right way? > > > > We will have to crypt stuff but I would preffer to deal with > that later eg > > when we wrap all the XML into a single file for each Empire. At present > just > > leave it so it is easy to use. > > > > Make sure you test it. > > > > > 4) EquipmentEditor: what is it, what will it do? Maybe there is > > > smth to upgrade in it? > > > > It is used to create Items(components ) that units and ships use eg > > Computers , Lasers , Fusion Powerplant etc . It is unlikely players will > > have access to it , but it will be used by us to create > components for the > > game. I will do some minor mods soon to make it simpler eg to remove > > subItems and have fixed raw materials ( Core.World.Materials - originaly > raw > > materials were components). > > > > > > > > I've sent you the code changes I did. It's beta, but it works. > > > Let me know if there is smth. wrong in it. > > > > Try to test things yourself ( and all code is alpha at that point) , I > only > > have time really to plug it in and see if it compiles. > > > > Ben > > > > PS: I send you some bits of a conversation we are having which > is not list > > worthy yet. Do you have Viso if so I will post the diagram. > > > > > > > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by:Crypto Challenge is now open! > > Get cracking and register here for some mind boggling fun and > > the chance of winning an Apple iPod: > > http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en > > _______________________________________________ > > Cosmos2-code mailing list > > Cos...@li... > > https://lists.sourceforge.net/lists/listinfo/cosmos2-code > > > > ------------------------------------------------------- > This SF.net email is sponsored by:Crypto Challenge is now open! > Get cracking and register here for some mind boggling fun and > the chance of winning an Apple iPod: > http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en > _______________________________________________ > Cosmos2-code mailing list > Cos...@li... > https://lists.sourceforge.net/lists/listinfo/cosmos2-code > > |
From: Steve B. <sbr...@ch...> - 2003-03-14 14:33:03
|
Im sorry but Im going to have to drop off the project, at least for a while. I just started a new job and although I'd like to be involved, I just don't have the time to commit to it. Steve ----- Original Message ----- From: "Ben Kloosterman" <ben...@it...> To: "Cosmos2-Code" <cos...@li...> Sent: Friday, March 14, 2003 2:45 AM Subject: [Cosmos2-code] RE: Questions > Keep the questions comming . I posted this to the list as other people may > have the same questions. > > Ben > > > Hello Ben, > > > > I have some (many ;)) questions. > > 1) EmpireTreeView: How should I access nodes? What information > > the nodes will contain? What does the Tree represents? Which > > variables should be contained in the Tree? Can player switch > > between Empires or this is a list of Empires for MP game? > > EmpireTreeView on the UI . This only contains the playing empire and will > contain the Races of the Empire and all his Groups( and contained Units) as > well as characters allowing quick navigation of your possessions. > > > 2) Game: IS our game MP-oriented? > Single and MP . MP will probably be first as it allows better play testing > and humans teach us how to build sneakier AI's. At the moment we are trying > to get 1 Empire getting a turn done - we will then get MP on one machine > done by doing each turn for a number of players and then doing a Gen. > > > How many players will there be > > online? > Probably 1 - 16. I think this is set in the Empires class. > > > Will there be any AI? > Yes , but not just single player even in multiplayers when players drop > out they will be relaced by an AI. > > > Will there be diplomatic relations > > between Empires? > Yes > > > What will it include in? > Diplomatic options need to be designed ( but will probably have to wait > for a bit more of the game to be active). One think of interest though is a > character may negotiate a Peacy treaty which will last a certain time. > > > Where the information > > about Empires will save: on HDD or on an Internet Server? > Good question . On the HDD of the players and the server. The server will > generate new files to download for each player. The UI then reads those > files. > > To give you an idea stars uses this procedure. The game has an .XY file > which is the map , which each player downloads at the start of the game. > Each empire than has a .m file representing all his assets and there > positions as well as map items they can see ( mines , enemy ships and > salvage). Then there is an .h file which has part of the map the player has > last seen ( a history) . When a player submits a turn he generates an x file > which is basically an order file and is pretty small. The server then uses > the old m files and the orders to generates a new m file and mails it to the > player. Single player works the same but the files are on the same machine > and the generation is automatic. > > I will do something similar but will keep map and scan information with the > map class eg (StarSystems) but I have to work out how to handle map updates > each turn without resending the whole map. This will need to be fleshed out > but like I said the first target is to be able to play the first turn. > > I would hope to have a client that autodownloads and uploads when a turn > gen is done ( which could be every 2 minutes or even every 2 days) but this > is not a priority yet and could be written in less than week. > > > > Whar does > > double_click on EmpireTree represents: will it change current > > Empire or do smth. > No . It will select the item clicked on ( Unit or character) and recentre > the map to that point. > > > else? What is the Main Screen Window( Test2 )? > > Testing - Devs can put extra stuff under Test2 . It is not used anymore. > > > Will it be the main window or is this optional? What's the use of > > Empires class if only ActivePlayer.EWmpire represents the real > > EMpire? > > ActivePlayer.Empires has been replaced this week by UIEmpire.Empire. The > reason is that UIEmpire.Empire get the current players possessions and is > used by the UI. When a tick occurs that a game month has passed Core will > generate the changes by going through the orders of all the empires and > executing the changes. The other reason is when you see the ships of other > Empires you will need to get basic information from the Empire class to get > logos colours etc , the detailed information will not be present so Empires > need a remote empire and an active empire mode ( same but less information > is available) . > > > How do I access the TechList of the Empire, what does it > > represents? > > It represents the Technology levels than an Empire has achieved /posseses. > This is being replaced by some different classes but it is pretty similar. > > > > 3) XML: Can I crypt Xml files? For example for saving password. To > > save Empire I've simply made Empire class Seralizable, am I on the > > right way? > > We will have to crypt stuff but I would preffer to deal with that later eg > when we wrap all the XML into a single file for each Empire. At present just > leave it so it is easy to use. > > Make sure you test it. > > > 4) EquipmentEditor: what is it, what will it do? Maybe there is > > smth to upgrade in it? > > It is used to create Items(components ) that units and ships use eg > Computers , Lasers , Fusion Powerplant etc . It is unlikely players will > have access to it , but it will be used by us to create components for the > game. I will do some minor mods soon to make it simpler eg to remove > subItems and have fixed raw materials ( Core.World.Materials - originaly raw > materials were components). > > > > > I've sent you the code changes I did. It's beta, but it works. > > Let me know if there is smth. wrong in it. > > Try to test things yourself ( and all code is alpha at that point) , I only > have time really to plug it in and see if it compiles. > > Ben > > PS: I send you some bits of a conversation we are having which is not list > worthy yet. Do you have Viso if so I will post the diagram. > > > > > > ------------------------------------------------------- > This SF.net email is sponsored by:Crypto Challenge is now open! > Get cracking and register here for some mind boggling fun and > the chance of winning an Apple iPod: > http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en > _______________________________________________ > Cosmos2-code mailing list > Cos...@li... > https://lists.sourceforge.net/lists/listinfo/cosmos2-code |
From: Ben K. <ben...@it...> - 2003-03-14 08:45:39
|
Keep the questions comming . I posted this to the list as other people may have the same questions. Ben > Hello Ben, > > I have some (many ;)) questions. > 1) EmpireTreeView: How should I access nodes? What information > the nodes will contain? What does the Tree represents? Which > variables should be contained in the Tree? Can player switch > between Empires or this is a list of Empires for MP game? EmpireTreeView on the UI . This only contains the playing empire and will contain the Races of the Empire and all his Groups( and contained Units) as well as characters allowing quick navigation of your possessions. > 2) Game: IS our game MP-oriented? Single and MP . MP will probably be first as it allows better play testing and humans teach us how to build sneakier AI's. At the moment we are trying to get 1 Empire getting a turn done - we will then get MP on one machine done by doing each turn for a number of players and then doing a Gen. > How many players will there be > online? Probably 1 - 16. I think this is set in the Empires class. > Will there be any AI? Yes , but not just single player even in multiplayers when players drop out they will be relaced by an AI. > Will there be diplomatic relations > between Empires? Yes > What will it include in? Diplomatic options need to be designed ( but will probably have to wait for a bit more of the game to be active). One think of interest though is a character may negotiate a Peacy treaty which will last a certain time. > Where the information > about Empires will save: on HDD or on an Internet Server? Good question . On the HDD of the players and the server. The server will generate new files to download for each player. The UI then reads those files. To give you an idea stars uses this procedure. The game has an .XY file which is the map , which each player downloads at the start of the game. Each empire than has a .m file representing all his assets and there positions as well as map items they can see ( mines , enemy ships and salvage). Then there is an .h file which has part of the map the player has last seen ( a history) . When a player submits a turn he generates an x file which is basically an order file and is pretty small. The server then uses the old m files and the orders to generates a new m file and mails it to the player. Single player works the same but the files are on the same machine and the generation is automatic. I will do something similar but will keep map and scan information with the map class eg (StarSystems) but I have to work out how to handle map updates each turn without resending the whole map. This will need to be fleshed out but like I said the first target is to be able to play the first turn. I would hope to have a client that autodownloads and uploads when a turn gen is done ( which could be every 2 minutes or even every 2 days) but this is not a priority yet and could be written in less than week. > Whar does > double_click on EmpireTree represents: will it change current > Empire or do smth. No . It will select the item clicked on ( Unit or character) and recentre the map to that point. > else? What is the Main Screen Window( Test2 )? Testing - Devs can put extra stuff under Test2 . It is not used anymore. > Will it be the main window or is this optional? What's the use of > Empires class if only ActivePlayer.EWmpire represents the real > EMpire? ActivePlayer.Empires has been replaced this week by UIEmpire.Empire. The reason is that UIEmpire.Empire get the current players possessions and is used by the UI. When a tick occurs that a game month has passed Core will generate the changes by going through the orders of all the empires and executing the changes. The other reason is when you see the ships of other Empires you will need to get basic information from the Empire class to get logos colours etc , the detailed information will not be present so Empires need a remote empire and an active empire mode ( same but less information is available) . > How do I access the TechList of the Empire, what does it > represents? It represents the Technology levels than an Empire has achieved /posseses. This is being replaced by some different classes but it is pretty similar. > 3) XML: Can I crypt Xml files? For example for saving password. To > save Empire I've simply made Empire class Seralizable, am I on the > right way? We will have to crypt stuff but I would preffer to deal with that later eg when we wrap all the XML into a single file for each Empire. At present just leave it so it is easy to use. Make sure you test it. > 4) EquipmentEditor: what is it, what will it do? Maybe there is > smth to upgrade in it? It is used to create Items(components ) that units and ships use eg Computers , Lasers , Fusion Powerplant etc . It is unlikely players will have access to it , but it will be used by us to create components for the game. I will do some minor mods soon to make it simpler eg to remove subItems and have fixed raw materials ( Core.World.Materials - originaly raw materials were components). > > I've sent you the code changes I did. It's beta, but it works. > Let me know if there is smth. wrong in it. Try to test things yourself ( and all code is alpha at that point) , I only have time really to plug it in and see if it compiles. Ben PS: I send you some bits of a conversation we are having which is not list worthy yet. Do you have Viso if so I will post the diagram. |
From: Ben K. <ben...@it...> - 2003-03-13 04:17:13
|
Work Update Core - Units ( Mathieu / Ben Kloosterman) - [IN PROGRESS] Designs are getting finished , ask us if you need to see the designs. UI - map generation (Scott Wagner ) -[IN PROGRESS] Some work done on Progress for for the generation done. UI - get new UI happening (Steve B / Ben Kloosterman) - [IN PROGRESS] Steve has started on that. I have put in a UI event system and will continue to move the old functionality to the new UI. Core & UI - Battle Engine (Richard Haake )- [IN PROGRESS] Characters [Martin] [IN PROGRESS} Update technology and convert to XML- (Mathieu) - [ALMOST COMPLETED] Empires - Dummy Empire + Save And Load ( HeavyWave) [IN PROGRESS] Drag and drop List control for fleets , productions queues etc (Saket) - Must handle 2 lists and icons. [IN PROGRESS] Tasks up for grab - first in first served. System Display !! UI Star and planet select display - Need overhauls - I will do some interim ones Work on groups + map display of groups Work on ship / unit builder Type in data for initial items. Get started on Colonies Change namespace layout - ( goodone for someone new). Characters - unless Saket is doing it . For the less enthusiastic these are available but I would prefer it if you could work on the above tasks - Build an ingame messenging system - Work on the battle engine ( Only if you are a DirectX expert) - Work on the Diplomacy system - Develop Message UI control - must be transparent. |
From: Ben K. <ben...@it...> - 2003-03-10 11:59:10
|
As per some requests here is some documentation . Can you let me know if it helps ? If so I will do one for core. |
From: Ben K. <ben...@it...> - 2003-03-10 04:05:24
|
> -----Original Message----- > From: cos...@li... > [mailto:cos...@li...]On Behalf Of Glenn > Nilsen > Sent: Monday, 10 March 2003 1:57 AM > To: cos...@li... > Subject: [Cosmos2-design] Some ideas > > > i have some ideas to the game... > (I´m not a very good english writer, so please exuse > me if this text includes some misspellings.) > > The player can choose from some options > > --POLITICS-- > Frontier : Police State : Democratic > 0 points 10 points 15 points > > --ECONOMICS-- > Free market : Planned : Green > 2 points 1 points 4 points > > --VALUES-- > Power : Knowledge : Wealth > 5 points 7 points 4 points > (This is only a exanple) > > And with this options the player can play with > different way to get more money, power, tech, you see? > And all options have some good stuff and bad stuff. > Like this : > If your enemy has chosen the option of a Police State, > you can pay an enemy unit to go to your side, but if > the enemy is a Democrtic State you can´t do this. > And in a Police State you will have more control over > your people/factory/units, but not in a Democratic > State. These things will be used at presetn each empire has 2 aspects to governemt these are Control - which determines how efficient a government is at controlling all its resources and units. Too many units and low gov will result in the Units not functioning very efficiently . This is used so small empires can compete with huge bureaucractic monsters Government - These are Democracy Feudal Despotism (Anarchy) Communism (Socialism) Collective. Im leaving economics out of it and partially wrapping it in the government type. eg Feudal * Despotism = Ultimate Freemarket , Democracy is a limited free market , Communism is a very limited free market with a bit planned and Collective is completely planned. > > And with a spy you can get info about the other > players, like : > > 1. Politics > 2. Economics > 3. Army size > 4. tech > and more... > > And the spy can destroy factories, steal money, plant > a virus, and more.... > ----- Yep these can all be done by spy units , military units or characters , spys units will be covery , military units are obvious and could start a war but are better at sabotage. > > What about this : > Players have one planet with people, factory, values, > and more.... This is common of the genre , but we are changing it a little bit in that people will be part of colony units , factories are part of production units . If you want you could have all your people oporating on huge ships. > > With this the players can fight to vlaim more planets, > or join alliances with other players. Yep - thats the plan. > We could make it so taht some players have more gold > than others, but on the other side have more coal, and > whit this we create the basics for trading. I have 8 materials .. Crystals Organics Minerals ( very Common - not worth trading) Rare Minerals Industrial Metals ( very Common - not worth trading) Heavy Metals Light Metals Radioactives We also have various Gases H , O , CO2 , CH4 and water. The materials are key to your production , the Gases & water are key to your people. I hope to cut down the materials later (maybe delete the common ones) but I want to see how it works in gameplay. > In addition, some planets are more valuable than > others, but there are on planets that have all the > resources taht needed to get far in the game. Yep that depends on the Resources , also any planet unlikely enough to have a compatible atmosphere would be extremely valueable . Most of the colonies will be domed but terraforming is possible and is the way to make planets decent. Ben |
From: Ben K. <ben...@it...> - 2003-03-07 07:14:49
|
Major update - The main reason this is a major update is the change to the UI structure , as I have mentioned in some of my email I have created an abstraction layer in UI called Wrappers and placed this in UserInterface.Wrappers. In the past I used "some" interfaces in Core.Global but this was less than ideal. And Global no longer exist along with SysData ! Why do we need this ? 1. Because we might want code to run on a server for multi player with no UI or a custom UI. This will keep the layers cleaner. 2. We need to abstract Core so people can make changes without affecting people. Interfaces could work but wrappers were a better solution in this case. 3. When we need to do a lot of drawing it is nice to have a Core class associated with a single UI class which does the drawing for it. eg UIPlanet will present different Bitmaps depending on the conditions. Changes involving other parties - Steve Brailsford - Main map , changed to new UI event architecture. Removed old map from old UI ( it is still there but Steve can delete it when he has finished migrating it) - Scott ( faz...@st...) - Have updated Core.StarMap to generate new StellarObjects. Your changes should be easier to put in. Main changes - Starmap now produces StarObjects such as Nebula , Black holes etc and not just systems. This involved removing SysData and adding a new class StellarObject. - Added wrapper UI abstraction layer - All UI conversation to Core should go through these warppers which provide UI services for the classes. When you are working on UI classes keep this in mind. - Removed Core.Global as wrappers now handle this - Removed the old starmap and created new starmap / galaxy map classes - Made the drawing done by Wrapper Objects for Starmap. Userinterfaces\Images classes now redundant - Used Bitmaps to draw stars and Nebula instead of the old image class. They look very good !! - Removed the old classes from mainscreen ( though the controls are still there - they are not used) - Fixed a problem with System Generations where fragments coliding with very small planets would become bigger planets - Hence there were (almost) no Asteroid belts generated - Fixed a problem with System Generations where fragments would not accumulate dust. - Added UI_Event and UI_Init class. All main UI events are to go through this class. To change the area or move the main map send the message to UI_Events to do so. - Removed ClientInterface . If you need the current players position use the UIEmpire wrapper. Outstanding issues - Map can only be moved by using Galactic Map . Im hoping Steve Brailsford will progress with this as he is working on this map functionality. - Bitmaps are good but need more work in particular the transparent background does not work when it is partially black leaving a black ring around stars super imposed on other bright objects eg binaries. Also no Nova or Blackhole bitmaps. - Performance - the Bitmaps are obtained from Resource Library but this is too slow for drawing maps as they move - Each Bitmap is taking 20-50 Ticks + drawing time of 20ms to get from the SystemCache so for 100 objects this is taking .2 to .5 seconds. This can be increased by either putting the Bitmaps in a strip and just drawing them directly or by using a cache. - Transparancy is broken - It has worked before so I just need to find out what is going on. To address some complaits I will write out some tables which indicate what all the classes are for and the structure. Ben PS: The UI namespaces are pretty broken and this needs to be fixed sometime. |
From: Ben K. <ben...@it...> - 2003-03-07 04:09:02
|
Just a continuation there is one trick you need to use with XML , .NET Xml Serialization 202. If you look at Core.Equipment.ItemType , you will see this code , the reason for this is XML will automatically serialize ( convert) the public properties of the object to XML but crashes when it runs into the binary picture property. To get around this you can use the [XmlIgnore()] and [XmlElement("Image")] to automatically handle this . So when loading and saving XML will use a stringname to load and save the Item. Note in the code I hacked it to save and load as a encoded string but in the final version we would need to keep the image name as part of the object and just use the image name and use ResourceLib to find the image by name in the ResourceLibrary (or if it doesn't find it then ResourceLib.GetImage will search the Data/Image directory) You can see this is action using The Item editors and the Data is in the Data directories. Ben [XmlIgnore()] public Image Image { get { return image; } set { image = value;}} /// <summary> /// Save and load an image /// TODO dont Save the picture as a file !!! Just call ResourceManager to find it according to the name. /// </summary> [XmlElement("Image")] public string XmlImage { get { try { String result = String.Empty; if (image != null) { System.IO.MemoryStream memoryStream = new System.IO.MemoryStream( INIT_BUFFER_SIZE); image.Save(memoryStream ,System.Drawing.Imaging.ImageFormat.Bmp); byte[] buffer = memoryStream.ToArray(); result = Convert.ToBase64String(buffer); } return result; } catch (Exception ex) { Debug.WriteLine(ex); return String.Empty; } } set { if ( value != String.Empty) { Byte[] buffer = Convert.FromBase64String(value); MemoryStream mem = new MemoryStream(buffer); image = new Bitmap(mem); } } } }// END CLASS DEFINITION ItemType |
From: Ben K. <ben...@it...> - 2003-03-07 03:56:34
|
Ok too questions I will start in reverse order. > And what to do with Empire class ? Can you give me description of > Empires and how they will work. You said several things but that is > not enough. Class Empire An Empire is the player and represents the Empire he controls. The Empire will consists of technology researched , links to all the characters a empire controls, links to diplomatic relations to other empires , Races the empire contains ( you could have an Empire consisting of a Master and a slave race ) and the Units an empire contains ( this includes colonies , production units ( factories etc) , research , military units , ships etc). An empire will also contain all the groups( Armies and Fleets) an empire contains ( units always exist in groups or other units). How are they linked ? It depends ...In most cases Empire will contain pointers to other objects eg units . These objects should not be saved as part of the empire as other empires need to find the same characters etc instead they should be saved as a seperate file - though this can be an array of objects think of a a file as a DB table. I know this will create lots of files , but we will bundle it up later. Empire will be used frequently to get resources belonging to that Empire eg Charcater empire.GetCharacter(string name) In most cases Empire will search its internal lists and when initializing it will call ( suggestions welcome) a static member of the appropriate class eg for the above Empire will call Character.Character(Empire empire , string name) , which would probably look in a file called <Empirename>characters.CHR . So why not use these static directly - so that characters does not contain a huge list to search through , by using Empires it actually caches all the information a player frequently uses. Class Empires The Empires class contains an Array of all the Empires ( eg 1 per player + AI's) . Ok on the second point nice work but 2 comments use XML , the Framework will do a LOT for you. Initially you may save characters and Races with the Empire but this needs to be pulled out later as described above and in later versions for charcaters you would just save an Array of strings (with the name) when you are loading it just add the functionality to the Character class as mentioned above ( eg static Character.Character(Empire empire , string name) to load the class). By the time you completely finish all the objects will be loadable and savable. Another very important point of using Xml is that for eaxmple in version 0.05 we might include a character array as part of Empire use because the Character class does not have the load facility yet . In version 0.07 ( just made it up ) it does have the facility and we change Empire to reflect this - If we are using Xml we can still load the Empires with binary data we are stuffed. Have a close look at ItemType and Items it Serializes as an XML - file which you will see in the Data directory. Now since these are sub parts of other classes they dont save themselves but you can see that the class in Core\Equipment\Lists saving an ItemType[]. Now Empire chould be able to load and save itself but make sure you put the save and load code in Core/Positions.Empire and in the UI just get the buttons to call Load or Save. Notice the comments if we enable this we can handle old version data files which is not possible with binary and very important at this stage of development. This one supports binary as well but dont worry about it just stick to Xml unless the files get huge. public static ItemType[] GetListFromFile(string filename) { ItemType[] resultList = null; Stream file = null ; try { file = File.Open(filename , FileMode.Open); if (file == null) file = File.Open(filename , FileMode.Open , FileAccess.Read , FileShare.ReadWrite); if (file!= null) { if (filename.EndsWith(".Xml")) { Type type = typeof(ItemType[]); XmlSerializer serializer = new XmlSerializer(type); /* If the XML document has been altered with unknown nodes or attributes, handle them with the UnknownNode and UnknownAttribute events.*/ //TODO serializer.UnknownNode += new XmlNodeEventHandler(serializer_UnknownNode); // serializer.UnknownAttribute += new XmlAttributeEventHandler(serializer_UnknownAttribute); file.Position = 0; resultList = (ItemType[]) serializer.Deserialize(file ) ; } else { BinaryFormatter binFormatter = new BinaryFormatter(); resultList = (ItemType[]) binFormatter.Deserialize(file ) ; } //else } // if (file!= null) } // try catch (Exception ex) { // TODO put up message and write to Log Console.WriteLine(ex.ToString()); } finally { if ( file != null) file.Close(); } Array.Sort(resultList); return resultList; } Sorry to drone on but Empire is an important class wrapping up many classes. Ben > -----Original Message----- > From: cos...@li... > [mailto:cos...@li...]On Behalf Of HeavyWave > Sent: Friday, 7 March 2003 2:21 AM > To: Ben Kloosterman > Subject: [Cosmos2-code] Empire save > > > Hello Ben, > > This is what I hae written (exept changes in Empire and > EmpireDetailControls classes): <snip> |
From: HeavyWave <hw...@bi...> - 2003-03-06 18:21:22
|
Hello Ben, This is what I hae written (exept changes in Empire and EmpireDetailControls classes): private void saveButton_Click(object sender, System.EventArgs e) { if(this.empireDetailsControl.Empire.Name==null) { noParameter(); return; } if(this.empireDetailsControl.Empire._pluralName==null) { noParameter(); return; } if(this.empireDetailsControl.Empire.RulerTitle==null) { noParameter(); return; } if(this.empireDetailsControl.Empire.contactMessage==null) { noParameter(); return; } System.Windows.Forms.SaveFileDialog dialogBox = new System.Windows.Forms.SaveFileDialog(); dialogBox.Filter = "Empire save files (*.ecs)|*.ecs|All files (*.*)|*.*"; dialogBox.ShowDialog(); System.IO.Stream fileToWrite; fileToWrite = dialogBox.OpenFile(); byte[] lineToWrite = new byte[256]; //Empire.Name save for(int i=0;i<this.empireDetailsControl.Empire.Name.Length;i++) lineToWrite[i]=Convert.ToByte(this.empireDetailsControl.Empire.Name[i]); fileToWrite.Write(lineToWrite, 0, this.empireDetailsControl.Empire.Name.Length); translator(fileToWrite, lineToWrite); //Empire.PluralName save for(int i=0;i<this.empireDetailsControl.Empire._pluralName.Length;i++) lineToWrite[i]=Convert.ToByte(this.empireDetailsControl.Empire._pluralName[i]); fileToWrite.Write(lineToWrite, 0, this.empireDetailsControl.Empire._pluralName.Length); translator(fileToWrite, lineToWrite); //Empire.RulerTitle save for(int i=0;i<this.empireDetailsControl.Empire.RulerTitle.Length;i++) lineToWrite[i]=Convert.ToByte(this.empireDetailsControl.Empire.RulerTitle[i]); fileToWrite.Write(lineToWrite, 0, this.empireDetailsControl.Empire.RulerTitle.Length); translator(fileToWrite, lineToWrite); //Empire.ContactMessage save for(int i=0;i<this.empireDetailsControl.Empire.contactMessage.Length;i++) lineToWrite[i]=Convert.ToByte(this.empireDetailsControl.Empire.contactMessage[i]); fileToWrite.Write(lineToWrite, 0, this.empireDetailsControl.Empire.contactMessage.Length); translator(fileToWrite, lineToWrite); //Empire.TechList save TechList[] techList = new TechList[256]; techList = this.empireDetailsControl.Empire.GetResearchTree(); for(int i=0;i<techList.Length;i++) { for(int i2=0;i2<techList[i].Description.Length;i2++) lineToWrite[i2] = Convert.ToByte(techList[i].Description[i2]); fileToWrite.Write(lineToWrite, 0, techList[i].Description.Length); lineToWrite[0]=6; fileToWrite.Write(lineToWrite, 0, 1); string Level = Convert.ToString(techList[i].Level); for(int i2=0;i2<Level.Length;i2++) lineToWrite[i2] = Convert.ToByte(Level[i2]); fileToWrite.Write(lineToWrite, 0, techList[i].Name.Length); lineToWrite[0]=6; fileToWrite.Write(lineToWrite, 0, 1); for(int i2=0;i2<techList[i].Name.Length;i2++) lineToWrite[i2] = Convert.ToByte(techList[i].Name[i2]); fileToWrite.Write(lineToWrite, 0, techList[i].Name.Length); lineToWrite[0]=6; fileToWrite.Write(lineToWrite, 0, 1); } translator(fileToWrite, lineToWrite); fileToWrite.Close(); } private void translator(System.IO.Stream file, byte[] buffer) { buffer[0]=7; file.Write(buffer, 0, 1); } private void noParameter() { System.Windows.Forms.MessageBox.Show("All fields should be !"); } Is this accepteable? And what to do with Empire class ? Can you give me description of Empires and how they will work. You said several things but that is not enough. -- Best Regards, HeavyWave mailto:hw...@bi... |
From: Ben K. <ben...@it...> - 2003-03-06 14:35:03
|
> -----Original Message----- > From: cos...@li... > [mailto:cos...@li...]On Behalf Of HeavyWave > Sent: Thursday, 6 March 2003 8:35 PM > To: Ben Kloosterman > Subject: [Cosmos2-code] Empire coding. > > > Hello Ben, > > As you said Empire Wizzard is a template, If you mean template for the final version probably - the Empire Wizzard is very raw and incomplete. It has key functionality but needs a lot of work so could either be enhanced or replaced. Characters are not yet done - so maybe just leave them out. I have asked a few people recently if they want to look at characters and I suspect it will not be long before some work begins on this. Comments on teh current Wizzard. The worst thing about it is it is ugly. A black star background would probably fit the them better as well ( You can find one in Images.Resource ). If you have a copy of Space Empires that probably has the best Wizzard I have seen . Also I have decided to limit Races per Empires to a maximum of 2 ( I was going to go back to 1 for simplicity , but Symbiotics can add a lot of interest) so rather than a race listing page it may be better to have Race1 and Race2 as speperate tabs like technology rather than a races page which then goes to the Races. You could Leave Race2 out and provide a button on the main page of Race1 which will add the page , up to you just a suggestion. Note the goal of this Wizzard is to produce an Empire class. Though read on . > so the one thing I have to > do is to practice with XML now? Waiting for you making new class for > UI integration? Ok these are finished :-) I have hooked in a new UI core from which we can expand- I will publish this to the list tommorow . Also note what I have done is created an abstraction layer (wrappers) with the idea that key Core classed has a UIclass that abstract this . This way no class in the UI will be calling core - I think this will make it better for people , I had looked at interfaces but this is better. Note that for Wizzards and creator screen eg Items , Empire Wizzard etc it creates a hassle does the Wrapper have to do all the properties of the base class ? I would say for small classes it is worth it but for big classes eg Items - the UIItem wrapper will just pass on ItemType. This should be avoided for most classes and I will leave this judgemnet up to whether it is required for Empires. > If so than I'll try to make some functions as > printEmpireDetails(); that will give full string of Empire parameters > that will look like this: "Name=XXX;Plural=XXa;" and so on. Will it be > useful? Ok have you read the UI documents ? What would be really nice is if UIEmpire which wraps empire provides a UserControl which is a summary for the Empire. This would list the Empires name , race ,logo , home world and key characters. Empire would need Properties ( get / set) so UIEMpire can put them in the summaryControl. Treat this as a phase2 after getting the XML and EmpireWizzard improved. Make sure you know when to use Methods and Properties. public properties are automatically handled by the XML serialization and would include things like Logo , Name etc a method is more complicated eg Get Treaties with EmpireX. > > Then, how can I send my code to the project? Please give me as much > details as possible. 2 options 1- Just use CVS to do an update ( which will put other peoples changes in your code) and then Commit your changes once you sort out any conflicts. This will update the code for everyone. The second option is to mail it to me and I will plug it in , but please only do this when there are a few files which are changed and it is not a major update. > > I said that I have much time, but in fact I'm coding not very fast, > cause most of time I simply learn C#. Thats fine it will take a while to learn the code in any project - especially one like this. A usercontrol like Empire control is a good place to improve your C# because of the events and properties. Hope this helps , promise to putout some more doco over the next week. Particularly a description of the classes and the file layout. Ben ben...@it... PS: I was very happy with the way the Starmap looked in the new UI. |