[Mad] Posted March 29, 2007 Report Share Posted March 29, 2007 Attached is updated Rft2Xml.exe and xnetCtFiles.xml files for checking into CTD repository. (Mad, I don't have access to it.)uploaded Link to comment Share on other sites More sharing options...
[dteviot] Posted March 29, 2007 Author Report Share Posted March 29, 2007 Tools SVN is on http://svn.projectxenocide.com/tools/ GreetingsRed KnightDone. Thanks.If you like to try the changes, you should see that the entries on the menu now have nice looking text.And I've set things up so adding some 3D models should be cleaner. Link to comment Share on other sites More sharing options...
Guest Azrael Posted March 30, 2007 Report Share Posted March 30, 2007 How about some progress screenshots for us poor mortals? Link to comment Share on other sites More sharing options...
red knight Posted March 30, 2007 Report Share Posted March 30, 2007 Come on, installing XNA is a breeze... If you can program in Modula-2 then installing XNA for compiling is very very easy. Nonetheless I will try in the weekend to take some screenshots. GreetingsRed Knight Link to comment Share on other sites More sharing options...
Guest Azrael Posted March 30, 2007 Report Share Posted March 30, 2007 Come on, installing XNA is a breeze... If you can program in Modula-2 then installing XNA for compiling is very very easy. Nonetheless I will try in the weekend to take some screenshots. GreetingsRed KnightSo I take it it involves nothing of that "compile headers, compile xenoUI, compile this and that" stuff? I have no idea what headers even are, and my compiling experience relates only to single file compilations, only now I'm starting to check on what definition and implementation files are, dunno how it is in C# Link to comment Share on other sites More sharing options...
[Mad] Posted March 30, 2007 Report Share Posted March 30, 2007 Come on, installing XNA is a breeze... If you can program in Modula-2 then installing XNA for compiling is very very easy. Nonetheless I will try in the weekend to take some screenshots. GreetingsRed KnightSo I take it it involves nothing of that "compile headers, compile xenoUI, compile this and that" stuff? I have no idea what headers even are, and my compiling experience relates only to single file compilations, only now I'm starting to check on what definition and implementation files are, dunno how it is in C#If I may redirect you over here? Link to comment Share on other sites More sharing options...
[dteviot] Posted April 1, 2007 Author Report Share Posted April 1, 2007 Progress update: Added 3D model scene to XNet.You can right click on the model and rotate it with moving the mouse, and the scroll wheel will zoom.Unfortunately, the only Xenocide model (of the set of 4 Lars W exported) that XNA will accept is the Stun Launcher.So if someone would like to try out the patched Blender .x export tool refered to hereXNA content pipeline, that would be really nice. Also Updated ResearchTree to match X-Net work. Screenshot: Link to comment Share on other sites More sharing options...
[dteviot] Posted April 10, 2007 Author Report Share Posted April 10, 2007 Progress update: Load Facility.xml.Stats for facilities added to X-Net.Facility selection dialog added to the Bases screen. (It doesn't actually do anything at the moment, I've got to do a lot of work to connect it up.) Screenshots: Link to comment Share on other sites More sharing options...
Zombie Posted April 10, 2007 Report Share Posted April 10, 2007 Awesome stuff, dteviot! Looks great. - Zombie Link to comment Share on other sites More sharing options...
[dteviot] Posted April 29, 2007 Author Report Share Posted April 29, 2007 Progress Report.Firstly, not a lot of progress to report, it's been a bad couple of weeks.I've been ill.My house was burgled.Detour while trying to figure out how to import models into XNAHackers hit xenocide site, making it difficult to upload work.However, what I've done since last update.Added dummy models for each of the facilities. (Actually, the dummies models are just 2 polygons marking out a square. But, in theory, we should be able to drop in the new models and have everything work. Once I figure out the necessary scaling. At momeent, models are 1 x 1, centered at 0,0,0.)Added a scene to the basesScreen, that shows the layout of a base (with the new facility models.) The scene shows a grid marking out the positions of facilities, the facilities in the base, and the position of the facility that is currently being added to the base.User can add facilities to a base. Base starts empty. Click on Build and you get to put a base access facility on the layout. (Move the cursor to the position you want it, and click. Click on “Build Facilities” button and you get to put a base access facility on the layout. Move the cursor to the position you want it, and left click.Click on “Build Facilities” button again, and you get a list of facilities. Select a facility, click OK, then position the new facility as you did with the base access.Note that at the moment, there are no checks to make sure the position for the facility is legal.I also don’t show under construction/complete state of facilities (or even update it with progress of time).Nor do it track any increase in base’s capabilities as facilities are completed.[*]Facilities in a base are saved/loaded to/from file. Link to comment Share on other sites More sharing options...
[Mad] Posted April 29, 2007 Report Share Posted April 29, 2007 Pretty cool work! Hope you're better now and you have any chance that they get those a$$***** that broke in your house! Link to comment Share on other sites More sharing options...
[dteviot] Posted May 1, 2007 Author Report Share Posted May 1, 2007 (edited) Update:1. Build Time for facilities is updated() as time passes.2. BasesScreen now shows days left to build each facility. edit: added screenshot Edited May 8, 2007 by dteviot Link to comment Share on other sites More sharing options...
[dteviot] Posted May 7, 2007 Author Report Share Posted May 7, 2007 Progress update:1. Removed Util.ResourceFormat()2. Enforce most rules for facility placement. (Still need to do only one instance of "only one of" facilities.)3. Can remove facilities by clicking on them in BasesScreen. (Checks base is not split)4. Added class YesNoDialog No new screenshot (attachment still isn't working.) Link to comment Share on other sites More sharing options...
[dteviot] Posted May 13, 2007 Author Report Share Posted May 13, 2007 Progress update:1. "Only one per base" limit for some facilities is now enforced.2. Update Capacity Information for base as facilities start building/finish building/are destroyed.3. BaseInfoScreen shows this capacity information. 4. Defense Strength is not calcuated at moment.5. The Personnel figures are just a stub. Screenshot attached, I hope Link to comment Share on other sites More sharing options...
[dteviot] Posted May 21, 2007 Author Report Share Posted May 21, 2007 Progress update:1. Check that each facility has an X-Net entry. (So you need to update to the latest xnet.xml file)2. Player can set location of 1st base.3. User can create new bases on the Geoscape. I'm going to claim Stage 4 as completed, except for enabling Radar. Which I'm going to defer for the moment, and move on Stage 9, funding and Stats.Please let me know if you find any bugs. Link to comment Share on other sites More sharing options...
[Mad] Posted May 21, 2007 Report Share Posted May 21, 2007 It compiles nicely, but I can't run it. "JIT Debugger: Exception 'System.NullReferenceException' in Xenocide.exe..." Link to comment Share on other sites More sharing options...
[dteviot] Posted May 21, 2007 Author Report Share Posted May 21, 2007 (edited) It compiles nicely, but I can't run it. "JIT Debugger: Exception 'System.NullReferenceException' in Xenocide.exe..."Works fine for me.Did you get the latest XNet.xml file? (this from the mainline trunk)Also, when you get exceptions, if you could run under the debugger and let me know where the exception is thrown, that would make fixing the problem a lot easier.To run under debugger:1. Start Game Studio Express.2. File menu -> Open Project -> Select file "Xenocide.sln".3. Debug menu -> Start Debugging edit. Added link Edited May 21, 2007 by dteviot Link to comment Share on other sites More sharing options...
[Mad] Posted May 22, 2007 Report Share Posted May 22, 2007 (edited) Xnet.xml is the newest. No idea what it could be. Attached two screenshots from the debugging session. I'll try downloading everything again. Maybe I messed sth up. edit: It's working now - thanks to Rincewind! Apparently I had a corrupted facility.xml Edited May 22, 2007 by Mad Link to comment Share on other sites More sharing options...
[Mad] Posted May 23, 2007 Report Share Posted May 23, 2007 (edited) I'm sorry, I got a new problem with the new revision. Already asked Rincewind, he is not able to reproduce my error. Ok, so here's the deal: I get an unhandled exception when trying to save a game. So what do I do? I start a new game, I place a base, I go back to geoscape, I klick save and the game crashes. Debug info is attached (unfortunatly in german, sorry - but I think you'll understand anyway). System.OverflowException was unhandled Message="Die arithmetische Operation hat einen ?berlauf verursacht." (translation: arithmetic operation caused overflow) Source="Xenocide" StackTrace: bei Xenocide.UI.Screens.LoadSaveGameScreen.SaveGameHeader.ReadString(Stream fs) in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\LoadSaveGameScreen.cs:Zeile 471. bei Xenocide.UI.Screens.LoadSaveGameScreen.ReadHeader(FileStream stream) in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\LoadSaveGameScreen.cs:Zeile 350. bei Xenocide.UI.Screens.LoadSaveGameScreen.AddSaveGameToGrid(FileStream stream, String filename) in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\LoadSaveGameScreen.cs:Zeile 260. bei Xenocide.UI.Screens.LoadSaveGameScreen.AddSaveGamesToGrid() in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\LoadSaveGameScreen.cs:Zeile 247. bei Xenocide.UI.Screens.LoadSaveGameScreen.InitializeGrid() in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\LoadSaveGameScreen.cs:Zeile 116. bei Xenocide.UI.Screens.LoadSaveGameScreen.CreateCeguiWidgets() in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\LoadSaveGameScreen.cs:Zeile 83. bei Xenocide.UI.Screens.Frame.Show() in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\Frame.cs:Zeile 90. bei Xenocide.UI.Screens.ScreenManager.SwapScreens() in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\ScreenManager.cs:Zeile 110. bei Xenocide.UI.Screens.ScreenManager.Update(GameTime gameTime) in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\UI\Screens\ScreenManager.cs:Zeile 185. bei Xenocide.Xenocide.Update(GameTime gameTime) in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\Xenocide.cs:Zeile 203. bei Microsoft.Xna.Framework.Game.Tick() bei Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e) bei Microsoft.Xna.Framework.GameHost.OnIdle() bei Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e) bei System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNative ethods.IMsoComponent.FDoIdle(Int32 grfidlef) bei System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNat veMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) bei System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) bei System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) bei System.Windows.Forms.Application.Run(Form mainForm) bei Microsoft.Xna.Framework.WindowsGameHost.Run() bei Microsoft.Xna.Framework.Game.Run() bei Xenocide.Program.Main() in E:\Downloads\PJxenocide\XNASource\trunk\Xenocide\Source\Program.cs:Zeile 41. causing code snip from LoadSaveGameScreen.cs /// Read a string from a file at the current position /// </summary> /// <param name="fs">file to read from</param> /// <returns>string read</returns> /// <remarks>Used to read header from file</remarks> /// <remarks>Had to write this myself because StreamReader closes stream when it's done</remarks> public static String ReadString(Stream fs) { int count = fs.ReadByte(); byte[] b = new byte[count]; fs.Read(b, 0, count); UTF8Encoding temp = new UTF8Encoding(true); return temp.GetString(b); }the bad guy here is byte[] b = new byte[count]; Any ideas? Thanks! Edited May 23, 2007 by Mad Link to comment Share on other sites More sharing options...
[Mad] Posted May 23, 2007 Report Share Posted May 23, 2007 Problem solved. Problem with corrupted savegames - deleted all savegames and everything went back to normal. Link to comment Share on other sites More sharing options...
[dteviot] Posted May 23, 2007 Author Report Share Posted May 23, 2007 Problem solved. Problem with corrupted savegames - deleted all savegames and everything went back to normal.The issue is that due to the way save/load works, you can only load a game that you saved with the same version. I.e. each time you get a new update of the source, any old save games won't load. Link to comment Share on other sites More sharing options...
[Mad] Posted May 24, 2007 Report Share Posted May 24, 2007 Problem solved. Problem with corrupted savegames - deleted all savegames and everything went back to normal.The issue is that due to the way save/load works, you can only load a game that you saved with the same version. I.e. each time you get a new update of the source, any old save games won't load. I see. That's a bit problematic for later updates isn't it?Shouldn't we (hehe, uhm, you guys ) try to put a file check before the save/load module tries to load the savegames? So that the game doesn't crash but gives an errormessage? Link to comment Share on other sites More sharing options...
[dteviot] Posted May 24, 2007 Author Report Share Posted May 24, 2007 Problem solved. Problem with corrupted savegames - deleted all savegames and everything went back to normal.The issue is that due to the way save/load works, you can only load a game that you saved with the same version. I.e. each time you get a new update of the source, any old save games won't load. I see. That's a bit problematic for later updates isn't it?Shouldn't we (hehe, uhm, you guys ) try to put a file check before the save/load module tries to load the savegames? So that the game doesn't crash but gives an errormessage?I'll add it to my ToDo list.However, as I don't see that as a big issue at the moment, don't expect a solution any time soon. Link to comment Share on other sites More sharing options...
[dteviot] Posted May 27, 2007 Author Report Share Posted May 27, 2007 Progress: 1. Rincewind has returned, and implemented some of research. (I'll let Mad provide some screenshots.)2. Added classes FuelLowGeoEvent and ResearchFinishedGeoEvent3. XML parser now does validation4. Set up an AppDomain.CurrentDomain.UnhandledException handler to show any uncaught exceptions5. Refactored ResearchGraph.ResearchableTopics() and .CurrentResearchProjects using yield, generics and anonymous delegates. (Yes, I'm just showing off.) Link to comment Share on other sites More sharing options...
[dteviot] Posted June 4, 2007 Author Report Share Posted June 4, 2007 Progress (XNA trunk)1. Now tracks income and expenditure (at least for facility).2. Monthly Report screen started. (Also doubles as Funding screen from Geoscape.)3. End of month processing hookpoint. Other notes:1. To run, need to copy country.xml and country.xsd from ..\Xenocide\Content\Schema to ..\Xenocide\bin\x86\Debug\Content\Schema2. Need to figure out What are the possible attitudes of countries to X-Corp? How attitude changes X-Corp funding? Link to comment Share on other sites More sharing options...
Zombie Posted June 4, 2007 Report Share Posted June 4, 2007 (edited) 2. Need to figure out What are the possible attitudes of countries to X-Corp? How attitude changes X-Corp funding?Countries have 4 attitudes (or ratings). 3 is happy, 2 is average, 1 is unhappy and 0 means they cut off funding completely. See the X-COM wiki's DIPLOM.DAT page for more info. If a country is happy it can fund a random amount from unchanged (0%) up to +20%. If it is unhappy, the reduction of funds is between 0 and -20%. Not sure what happens when their reaction is mixed, so I'll need to test this out sometime. I *think* it still follows the positive scale. Obviously, if a country is 0, they have signed a pact with the aliens and have withdrawn from the X-COM program so no more cash from them. Funding changes are based loosely off of the scoring difference between X-Com and the alien forces. Pity I don't have that info on me at the moment. Will get that up ASAP. :wink1: - Zombie Edited June 4, 2007 by Zombie Link to comment Share on other sites More sharing options...
[dteviot] Posted June 7, 2007 Author Report Share Posted June 7, 2007 Thanks muchly.Implemented, updated code checked in. If anyone's tracking, you will need to copy the updated country.xsd and country.xml files as detailed in my previous post.Screenshot attached as proof. Funding changes are based loosely off of the scoring difference between X-Com and the alien forces. Pity I don't have that info on me at the moment. Will get that up ASAPAs soon as you give me the details, I'll implement. Link to comment Share on other sites More sharing options...
red knight Posted June 7, 2007 Report Share Posted June 7, 2007 Excelent. Could you add those files to the build process so they get copied? GreetingsRed Knight Link to comment Share on other sites More sharing options...
Guest Azrael Posted June 7, 2007 Report Share Posted June 7, 2007 I love proof. Link to comment Share on other sites More sharing options...
[dteviot] Posted June 10, 2007 Author Report Share Posted June 10, 2007 Excelent. Could you add those files to the build process so they get copied? GreetingsRed KnightI could, but I don't see much point in doing so. You already have to manually copy the other schema xml/xsd files from the c++ branch. So having to manually copy a couple more isn't much work. And I don't want to put copies of the files from the c++ branch into the c# branch. Having more than one copy of a file is a guarantee thay they will get out of sync. Cheers,David Link to comment Share on other sites More sharing options...
rincewind Posted June 13, 2007 Report Share Posted June 13, 2007 Hi, I'm back from my ego-trip :-) Seriously, I've been working on and off on the component-branch and I realized that two points: 1) I think there's still a lot of stuff to learn about XNA to use it to its full potential. Nevertheless, it also works with a more traditional programming style.2) While some serious refactoring could prove beneficial, I don't have the time or motivation to work on this sufficiently. Maybe we can pick this up again when there are more large-scale experiences with xna out there and someone has the time and energy to tackle it. So I decided to rather go back to trunk and implement smaller features that actually result in something on the screen being seen. First I decided to finally get to fixing all the stuff, dteviot mentioned about the Research part. Only to realize he already did most of it (so thanks a lot and I'll fix stuff faster next time ). At least I managed to add comments for the private members that where still missing. There's still the issue about having the entire researchtree in the savegame or splitting it in two. A static part that holds the description from the xml and a dynamic part that holds what is researched (and some form of manager that handles the analysis and modification of the two). Actually this was mostly my first design (with the manager being part of the static-part, but nevertheless). I changed it to the current design because of two major reasons: One is updatability: A new update is not going to change the researchtree in existing savegames resulting in potentially inconsistent state (e.g. some requirements no longer able to be fullfilled, player having weapons that he can no longer produce, etc). Of course this also implies that if there's a bug in the tree, an update won't "fix" old savegames. (So this "advantage" is at the same time a disadvantage, but I still think the benefits outweight the costs) The other point is much more important I think: We can debug errors much more easily if we actually have the research tree in a savegame as we then just need a savegame from the user in order to reproduce his error (and not his current research.xml, etc as well). Anyway, hope to hear some comments. Also: whats next on the wishlist to implement if these arguments prove valid? I could go into the production part as it should have some synergy effects with research. Cheers, Rincewind Link to comment Share on other sites More sharing options...
[dteviot] Posted June 13, 2007 Author Report Share Posted June 13, 2007 Hi, I'm back from my ego-trip :-) Seriously, I've been working on and off on the component-branch and I realized that two points: 1) I think there's still a lot of stuff to learn about XNA to use it to its full potential. Nevertheless, it also works with a more traditional programming style.2) While some serious refactoring could prove beneficial, I don't have the time or motivation to work on this sufficiently. Maybe we can pick this up again when there are more large-scale experiences with xna out there and someone has the time and energy to tackle it. So I decided to rather go back to trunk and implement smaller features that actually result in something on the screen being seen. First I decided to finally get to fixing all the stuff, dteviot mentioned about the Research part. Only to realize he already did most of it (so thanks a lot and I'll fix stuff faster next time ). At least I managed to add comments for the private members that where still missing. There's still the issue about having the entire researchtree in the savegame or splitting it in two. A static part that holds the description from the xml and a dynamic part that holds what is researched (and some form of manager that handles the analysis and modification of the two). Actually this was mostly my first design (with the manager being part of the static-part, but nevertheless). I changed it to the current design because of two major reasons: One is updatability: A new update is not going to change the researchtree in existing savegames resulting in potentially inconsistent state (e.g. some requirements no longer able to be fullfilled, player having weapons that he can no longer produce, etc). Of course this also implies that if there's a bug in the tree, an update won't "fix" old savegames. (So this "advantage" is at the same time a disadvantage, but I still think the benefits outweight the costs) The other point is much more important I think: We can debug errors much more easily if we actually have the research tree in a savegame as we then just need a savegame from the user in order to reproduce his error (and not his current research.xml, etc as well). Anyway, hope to hear some comments. Also: whats next on the wishlist to implement if these arguments prove valid? I could go into the production part as it should have some synergy effects with research. Cheers, RincewindWell, some things are:1. The "scheduled update queue" we've previously discussed.2. Update CeGui# InputInjector, to handle the number keys on the keyboard (and maybe some of the other keys like period, hyphen, underscore, space.3. Implement a mechanism for allowing UFO missions to pick a region/country, and then head for the right place.Zombie, can you highlight the difference between regions and countries with respect to score allocated to Aliens/X-Com?4. Start thinking about how we're going to implement people. Generator, classes, attributes, etc. Suggestion - do we want to not really distingish between soldiers/scientists/engineers? They all have the same skill sets, just different values for the engineering and research skills.? Link to comment Share on other sites More sharing options...
rincewind Posted June 14, 2007 Report Share Posted June 14, 2007 Well, some things are:1. The "scheduled update queue" we've previously discussed.2. Update CeGui# InputInjector, to handle the number keys on the keyboard (and maybe some of the other keys like period, hyphen, underscore, space.3. Implement a mechanism for allowing UFO missions to pick a region/country, and then head for the right place.Zombie, can you highlight the difference between regions and countries with respect to score allocated to Aliens/X-Com?4. Start thinking about how we're going to implement people. Generator, classes, attributes, etc. Suggestion - do we want to not really distingish between soldiers/scientists/engineers? They all have the same skill sets, just different values for the engineering and research skills.? Just committed a fix for (2), so you can use the number keys. I tried to google a little if there's not a simpler solution to it, as I somehow think that there should be a simpler method for stuff like period, hyphen, etc. without resorting to a huge switch statement... I'll try to get a proposal for (1) written and branch it into somewhere (branches are so cheap in SVN, that I think this makes for better discussions). About (3), I'll wait for Zombie to explain the datamodel a little. Concerning (4), I'm wondering if we should actually implement scientists/engineers as "real people" for now. It definitly deviates from the original game mechanics and I think we should go for replicating it for now, as this would probably introduce a whole lot of balancing issues, etc. Also, I think it's easy to later change the simple numeric assign in the ResearchTopic to a linked list of "real people" and a slight modification of the dayPassed handler.One could of course argue that we could still implement the full model and for now, just always add people with full science attribute, but I think this creates a lot of code that for now is not needed which is not really in the KISS-line of development. Tell me what you think, Rincewind Link to comment Share on other sites More sharing options...
[dteviot] Posted June 14, 2007 Author Report Share Posted June 14, 2007 Well, some things are:1. The "scheduled update queue" we've previously discussed.2. Update CeGui# InputInjector, to handle the number keys on the keyboard (and maybe some of the other keys like period, hyphen, underscore, space.3. Implement a mechanism for allowing UFO missions to pick a region/country, and then head for the right place.Zombie, can you highlight the difference between regions and countries with respect to score allocated to Aliens/X-Com?4. Start thinking about how we're going to implement people. Generator, classes, attributes, etc. Suggestion - do we want to not really distingish between soldiers/scientists/engineers? They all have the same skill sets, just different values for the engineering and research skills.? Just committed a fix for (2), so you can use the number keys. I tried to google a little if there's not a simpler solution to it, as I somehow think that there should be a simpler method for stuff like period, hyphen, etc. without resorting to a huge switch statement...Thanks, I couldn't see a nice solution either, which is why I didn't do it. But now that we need to enter numbers, remembering that you need to use the numeric keypad to enter numbers is a pain. (And probably makes people who don't know that think the "add scientists to project" dialog is broken. I'll try to get a proposal for (1) written and branch it into somewhere (branches are so cheap in SVN, that I think this makes for better discussions).Excellent About (3), I'll wait for Zombie to explain the datamodel a little.I should expand a bit in this. What I was thinking of was trying to flesh out the craft/AI a bit more.Specifically, what I was thinking of was implementing the different mission types discussed in the Alien AI thread, with particular reference to X-COM Wiki's MISSIONS.DAT page.And updating the Overmind AI, at least to the point of at start of each month, picking a couple of missions and their associated targets.Then plug-in scoring.Then plug-in radar. Allow user to buy craft, hire staff, and and we've acutally got ourselves a minimally playable geoscape. Concerning (4), I'm wondering if we should actually implement scientists/engineers as "real people" for now. It definitly deviates from the original game mechanics and I think we should go for replicating it for now, as this would probably introduce a whole lot of balancing issues, etc. Also, I think it's easy to later change the simple numeric assign in the ResearchTopic to a linked list of "real people" and a slight modification of the dayPassed handler.One could of course argue that we could still implement the full model and for now, just always add people with full science attribute, but I think this creates a lot of code that for now is not needed which is not really in the KISS-line of development.I agree. Until we start work on the battlescape, there's no need for soldiers (and they're the really detailed people.) So, to start with, let's go for simplest implementation to get geoscape/bases working. Which is an integer counter in each base for number of scientists and another for the engineers. Link to comment Share on other sites More sharing options...
rincewind Posted June 15, 2007 Report Share Posted June 15, 2007 About the country/mission part, I was mostly referring to the definition of country regions and trying to get some progress report on that. As I guess, that would be a feature we'll need for the AI missions. On the other hand, I guess we can still get by with using real random positions for the time being. Nevertheless, anybody working on the country coordinates? Link to comment Share on other sites More sharing options...
[dteviot] Posted June 15, 2007 Author Report Share Posted June 15, 2007 About the country/mission part, I was mostly referring to the definition of country regions and trying to get some progress report on that. As I guess, that would be a feature we'll need for the AI missions. On the other hand, I guess we can still get by with using real random positions for the time being. Nevertheless, anybody working on the country coordinates?this forum is the latest work on the topic I'm aware of. Link to comment Share on other sites More sharing options...
rincewind Posted June 15, 2007 Report Share Posted June 15, 2007 About the country/mission part, I was mostly referring to the definition of country regions and trying to get some progress report on that. As I guess, that would be a feature we'll need for the AI missions. On the other hand, I guess we can still get by with using real random positions for the time being. Nevertheless, anybody working on the country coordinates?this forum is the latest work on the topic I'm aware of. Ok, I'll see what I can come up with. About something else: I tried to get some fbx-models exported from Blender. Apparently, the Blender fbx-exporter adds some form of empty Video-Texture to the exported file. Since it's a ascii-file, I just removed it and the model loads (assault rifle). This leaves two "problems": 1) Most models in the assets-directory are .max files which Blender can't import. So either someone exports them to fbx from max or puts them in some intermediate format (3ds for example). No idea what gets lost on the way, though. Maybe someone having access to MAX can post some results on this? 2) Currently, it only shows the diffuse texture, I'll try to investigate how to get a nice bumpmapping shader with per-pixel-lighting on there. Link to comment Share on other sites More sharing options...
[dteviot] Posted June 16, 2007 Author Report Share Posted June 16, 2007 About the country/mission part, I was mostly referring to the definition of country regions and trying to get some progress report on that. As I guess, that would be a feature we'll need for the AI missions. On the other hand, I guess we can still get by with using real random positions for the time being. Nevertheless, anybody working on the country coordinates?this forum is the latest work on the topic I'm aware of.I should add, a new possible recruit (darkside) has just posted some code for converting positions on the geoscape to regions. With a bit of luck, it will be spruced up and integrated into the codebase in a couple of days.Which reminds me, can you tell me how to promote someone to Recruit? Ok, I'll see what I can come up with. About something else: I tried to get some fbx-models exported from Blender. Apparently, the Blender fbx-exporter adds some form of empty Video-Texture to the exported file. Since it's a ascii-file, I just removed it and the model loads (assault rifle).Can you give me a couple more details, such as exactly what the problem line looks like? This leaves two "problems": 1) Most models in the assets-directory are .max files which Blender can't import. So either someone exports them to fbx from max or puts them in some intermediate format (3ds for example). No idea what gets lost on the way, though. Maybe someone having access to MAX can post some results on this?However models are not really needed until we hit the battlescape, so there's no hurry on this. I suggest posting this request to the art workshop. Link to comment Share on other sites More sharing options...
[Mad] Posted June 16, 2007 Report Share Posted June 16, 2007 Which reminds me, can you tell me how to promote someone to Recruit?You'll have to write a PM to stewart. He'll promote the forum member to applicant and send him the license PM. AS soon as the applicant signs the kicense PM stewart will promote him to recruit. Voila! If you want to promote a recruit to full member after some time, you'll again have to write a PM to stewart. Link to comment Share on other sites More sharing options...
[dteviot] Posted June 18, 2007 Author Report Share Posted June 18, 2007 Progress: Fixed (some) FxCop warnings from the Util.GetAttribute() functions. Now loads item.xml file. X-Net shows stats for Aircraft & Craft Weapons. (Screenshot attached as proof.) Linked Craft properties to item.xml. (So aircraft is now a Gryhon, and UFO is a Recon UFO) Aircraft and UFO are now armed. (With weapons from item.xml)Other notes: If anyone's tracking these changes, you will need to get the updated basic.xsd, item.xsd and item.xml from the C++ branch. Can someone please tell me what stats are shown in Ufopedia for UFO entries? (Mad) We may also want to add a statisticsLink entry to the UFO entries in X-Net.xml (remember, this file is generated, so patch the source file xnetCtFiles.xml) (Mad) X-Net.xml, for craft missiles, set the statisticsLink to point to the missile launcher, NOT the missile, in item.xml I'm now about to working on inventory; to put craft, weapons and ammo into human bases. Which will probabaly take a few weeks. So if anyone wants to work on an aeroscape dialog (hint hint) it shouldn't conflict with my work.Changes to basic.xsd, item.xsd and item.xmlA craft weapon added for each UFO weapon. (I've plugged in random values for TUs and accuracy, so Zombie may wish to update them.)Ufos refactored to use a craft weapon. (This means I only need one class to cover both X-Corp and UFO craft weapons.)Updated damage types to track changes made when combatants.xml was last updated.Condor carries 2 XCaps, not 4 Link to comment Share on other sites More sharing options...
[Mad] Posted June 18, 2007 Report Share Posted June 18, 2007 (Mad) We may also want to add a statisticsLink entry to the UFO entries in X-Net.xml (remember, this file is generated, so patch the source file xnetCtFiles.xml) (Mad) X-Net.xml, for craft missiles, set the statisticsLink to point to the missile launcher, NOT the missile, in item.xmlThis is probably best handeled by Zombie, since he is best familiar with the xmls already. Already PMed him. Link to comment Share on other sites More sharing options...
Zombie Posted June 18, 2007 Report Share Posted June 18, 2007 *waves* Hi again. Thanks for the PM, Mad. Right, so I haven't had much experience with X-NET.xml. In fact, I don't think I actually saw the file yet. Well, some things are:1. The "scheduled update queue" we've previously discussed.2. Update CeGui# InputInjector, to handle the number keys on the keyboard (and maybe some of the other keys like period, hyphen, underscore, space.3. Implement a mechanism for allowing UFO missions to pick a region/country, and then head for the right place.Zombie, can you highlight the difference between regions and countries with respect to score allocated to Aliens/X-Com?4. Start thinking about how we're going to implement people. Generator, classes, attributes, etc. Suggestion - do we want to not really distingish between soldiers/scientists/engineers? They all have the same skill sets, just different values for the engineering and research skills.?About point 3, I'll try to get back to you later today or tomorrow morning with the details. Progress: Fixed (some) FxCop warnings from the Util.GetAttribute() functions. Now loads item.xml file. X-Net shows stats for Aircraft & Craft Weapons. (Screenshot attached as proof.) Linked Craft properties to item.xml. (So aircraft is now a Gryhon, and UFO is a Recon UFO) Aircraft and UFO are now armed. (With weapons from item.xml)Other notes: If anyone's tracking these changes, you will need to get the updated basic.xsd, item.xsd and item.xml from the C++ branch. Can someone please tell me what stats are shown in Ufopedia for UFO entries? (Mad) We may also want to add a statisticsLink entry to the UFO entries in X-Net.xml (remember, this file is generated, so patch the source file xnetCtFiles.xml) (Mad) X-Net.xml, for craft missiles, set the statisticsLink to point to the missile launcher, NOT the missile, in item.xml I'm now about to working on inventory; to put craft, weapons and ammo into human bases. Which will probabaly take a few weeks. So if anyone wants to work on an aeroscape dialog (hint hint) it shouldn't conflict with my work.Changes to basic.xsd, item.xsd and item.xmlA craft weapon added for each UFO weapon. (I've plugged in random values for TUs and accuracy, so Zombie may wish to update them.)Ufos refactored to use a craft weapon. (This means I only need one class to cover both X-Corp and UFO craft weapons.)Updated damage types to track changes made when combatants.xml was last updated.Condor carries 2 XCaps, not 4Concerning the stats shown for UFO's, see here. If you could point me in the direction where to find basic.xsd and the two item files, I'll be happy to update item.xml to reflect the craft weapons. The Skyranger could carry 3 tanks, the Avenger could carry 4 and the Lightning was just for troops. Don't remember what X-COM craft the Condor is based off of, but it should follow those numbers. That is, unless the model doesn't allow it. :wink1: - Zombie Link to comment Share on other sites More sharing options...
Davo Posted June 18, 2007 Report Share Posted June 18, 2007 Hey lads, just thought you might like to know its fantastic to see some progress in the coding area of things. i have absoloutely no idea whatsoever as to how this happens but it is wonderful to see something that to us mere mortals looks like progress (as from what i had gathered the xna branch of things was coming to a complete halt and possible death). Already I have seen a greater interest in the site and how many users are currently online/surfing the site (guest and annonymous users:P) although the real stats may say differently. Keep up what looks to be an enourmous effort ! Merely a lowly ct's point of view, take no notice of the loud over excited boy in the corner.... Link to comment Share on other sites More sharing options...
[Mad] Posted June 18, 2007 Report Share Posted June 18, 2007 [...]Don't remember what X-COM craft the Condor is based off of, but it should follow those numbers. That is, unless the model doesn't allow it. :wink1:It's based on the skyranger, so this shouldn't be a model problem at all... This contains all new and old names. Link to comment Share on other sites More sharing options...
[dteviot] Posted June 18, 2007 Author Report Share Posted June 18, 2007 (Mad) We may also want to add a statisticsLink entry to the UFO entries in X-Net.xml (remember, this file is generated, so patch the source file xnetCtFiles.xml) (Mad) X-Net.xml, for craft missiles, set the statisticsLink to point to the missile launcher, NOT the missile, in item.xmlThis is probably best handeled by Zombie, since he is best familiar with the xmls already. Already PMed him.Actually, Mad, I think you are the best person to work on that.xnet.xml is the xml that gives, well, X-Net. and if you recall, it's generated from the CTD texts by Rtf2Xml. (Using the instructions in xnetCtFiles.xml)What I'm talking about is each entry in xnet.xml can have a statisticsLink entry, which points at an entry in item.xml, to get the actual stats for the item put into the X-Net text.If you have a look at the (aircraft) cannon, and sidewinder missile entries in X-Net, you'll see that different sets of stats are given. This is because the missile entry's statisticLink points to the sidewinder missile clip item. It needs to point to the sidewinder missile launcher. (in item.xml) The same thing probably needs to be done for the other missile launchers.The UFO entries are completely missing a statisticsLink entry. So that needs to be added so that X-Net can show the stats for each UFO type. I hope this is understandable. I would do this myself, but (and I hope this doesn't sound arrogant) but I believe I can make better use of my time writing code. If you could point me in the direction where to find basic.xsd and the two item files, I'll be happy to update item.xml to reflect the craft weapons.In Subversion, hereAnd thanks for the UFO screenshots. Link to comment Share on other sites More sharing options...
[Mad] Posted June 18, 2007 Report Share Posted June 18, 2007 (edited) Actually, Mad, I think you are the best person to work on that.xnet.xml is the xml that gives, well, X-Net. and if you recall, it's generated from the CTD texts by Rtf2Xml. (Using the instructions in xnetCtFiles.xml)What I'm talking about is each entry in xnet.xml can have a statisticsLink entry, which points at an entry in item.xml, to get the actual stats for the item put into the X-Net text.If you have a look at the (aircraft) cannon, and sidewinder missile entries in X-Net, you'll see that different sets of stats are given. This is because the missile entry's statisticLink points to the sidewinder missile clip item. It needs to point to the sidewinder missile launcher. (in item.xml) The same thing probably needs to be done for the other missile launchers.The UFO entries are completely missing a statisticsLink entry. So that needs to be added so that X-Net can show the stats for each UFO type. I hope this is understandable.Yea, I got it the first time. That's why I said it might be best handled by Zombie, since he is familiar with the other xml files. Anyway I'll try to have a look at this as well. Problem with the thing linking the XNET entries to the launcher is, that we do get accuracy etc etc, but not, and that always bothered me about X-COM, the destructive power of a weapon. Anyway, it's done - at least I think so. Edited June 18, 2007 by Mad Link to comment Share on other sites More sharing options...
[dteviot] Posted June 18, 2007 Author Report Share Posted June 18, 2007 Problem with the thing linking the XNET entries to the launcher is, that we do get accuracy etc etc, but not, and that always bothered me about X-COM, the destructive power of a weapon.I believe I've fixed that.Have a closer look at the screen shot I posted. Link to comment Share on other sites More sharing options...
[Mad] Posted June 18, 2007 Report Share Posted June 18, 2007 Problem with the thing linking the XNET entries to the launcher is, that we do get accuracy etc etc, but not, and that always bothered me about X-COM, the destructive power of a weapon.I believe I've fixed that.Have a closer look at the screen shot I posted. Oh. Sorry, my bad. I deducted only from xnet.xml and items.xml. Over there it looked like it would only be taken from the launcher - and the launchers don't have damage values - that's why I mentioned this. Link to comment Share on other sites More sharing options...
[dteviot] Posted June 24, 2007 Author Report Share Posted June 24, 2007 Progress Report Renamed Xenocide namespace to ProjectXenocide. (Fixes FxCop warning) Renamed Craft namespace to Vehicles. (Fixes FxCop warning) Renamed HumanBases namespace to Outposts X-Net entry for UFOs now gives their statistics (screenshot attached) ResearchTopic.Apply() now works for ONE_OF collections. (It use to grant from last to first but one item. And would never grant the first item.) Each UFO is given a unique name Each Human craft is given a unique nameOther notes: I'm also thinking I should rename the Model.Geoscape.Countries namespace to Geography, as this namespace will aquire countries, regions and terrain. For display of X-Net stats, you need to get the xnet.xml Mad updated. Which lives at http://svn.projectxenocide.com/assets/Creative Text Department/XNetnot to be confused with the xnet in the c++ tree, which lives at http://svn.projectxenocide.com/xenocide/tr...ame/data/schemaAside, we've now got a bit of a problem, with two copies of xnet.xml in subversion, and they're not in sync.MindStormMaster, is there any way we can fix up Subversion to tell it that when someone asks for the xnet.xml in the c++ tree they get the one from the CTD repository? Also, to get UFOs to show in X-Net, you need to go to Research, and interogate an Alien Engineer. I wonder if we should change "Interogate" to "Torture"? Reason you don't see much with this checking is because I did some major code refactoring, and checked it before I proceeded with inventory. I didn't check in DarkSide's patch, because I'm wating on his final version, then I can integrate it in one step. (I hope) Minor issue, in the XML files, we have a number of names with hyphens in them. e.g. "ITEM_XC-22_ECLIPSE". Unfortunately, the hyphen can be mistaken for a minus sign and screws up parsing. We may want to remove the hyphens. Link to comment Share on other sites More sharing options...
red knight Posted June 25, 2007 Report Share Posted June 25, 2007 I like the naming changes both the Outpost and the Geography one. Needless to say, Excelent team work guys!! GreetingsRed Knight Link to comment Share on other sites More sharing options...
Recommended Posts