On what?
Z.
Printable View
On what?
Z.
The forums sound good.
Don't i get it mailed to me ??? or do i have to wait ??
OK, so when do I get a look?
Zaei - Wha-? That's the number from debug.txt after I ran the program. It was great, by the way ;)
Psy & Arb - Right now!
http://www.crystal-rain.com/download.asp
Just wait a second, k?
What System specs, Sas?
Z.
I've already posted them 6 of my posts back.
I think it looks quite good. I take it the camera isnt meant to move. If so how ??
T'would looks akpe loads better with a better grass texture or summat coz it looks soooo pixely.
I got 995.424 in debug.txt
Specs are shown above.
Well, Sas's number says that the terrain needs more work. So, I will get to work =).
Z.
Day by dat i am ironing bugs out of the networking. I fixed the running that would crash the server when it became full by not ejecting all new players properly. I have added features into the client to return either a +OK accept or -ERR which can be FULL (server full) or IP (ip address blocked).
A quick count shows that the networking has rounded to a whopping 6,988 lines of code.
The engine and terrain code only take up ~5100 lines =). Keep up the good work, Psy!
Z.
Well, 5000 of that was in the divinity sockets which was taken from HawkNL although this gives a very good bases for me to build the networking on which adds up the extra 2000.
Ran it again...
146.05
Whew =), Ok, so the terrain is nearly finished.
Psy, what is the liscense on HawkNL? I dont want to get into any trouble =).
Z.
Umm, but still it was really slow and jerky, I don't know why. Whenever I passed my mouse over it, it was EXTREMELY slow.
We will see what happens when I add camera movement and such to it =).
Z.
I get ~10 fps on an ATI Rage 128, P3 1Ghz, 512M RAM. ~2 on an ATI Rage Pro, P3 ~500(OCed), 128M RAM. I think that it still needs some work, so I will start investigating some new ideas =).
I think that I have all of the pathfinding worked out in my brain (its actually a fairly simple algorithm, that mimics an actual person's thought process =). I just need to implement it.
Z.
I couldn't get your little wotsit to work guys.
You know, it should really be a little easier to install than making folders all over the pc. I know it's only a test thing, but it's not hard to make it all in one directory.
Ok, firstly it complained it couldn't find a dll. So I renamed the Times of War folder to TimesOfWar (no spaces) and it stopped producing that error, but it did nothing when I ran it.
Literally nothing. The hourglass appeared for less than a second. No error, nothing.
Help?
Copy both DLLs to C:\Windows\System or C:\WinNt\System32
I agree on that it's a bit hard to set up, and maybe we should have an installer from now on?
The reason that you have to create folders and such at the moment is because if I use the line:
I cant be sure that the relative path starts in the same folder that the exe is in. When you run it from the VC IDE, this is set up automagically, but other times, it might not be right. I might end up trying to LoadLibrary("D:\\Program Files\\Times Of War\\timesofwar.dll", ...), which doesnt exist. So, for testing, I use absolute paths (c:\Times Of War\timesofwar.dll).Code:LoadLibrary("..\\Times Of War\\timesofwar.dll, ...);
Sorry, The next release will have an installer =).
Z.
Today So Far:
- I fixed a bug within the networking making errors being called twice.
- I started work on allowing the server modules for player identification allocation.
Arbiter - I found i had to copy the terrain.dll or one of them to that of the application for some reason.
Zaei - The license is free, code can be used / modified. check it at www.hawksoft.com
Ok, Psy, just making sure =).
Z.
Well i came to running the server today and now im getting a ****ing error when closing the app :(
LOL two secs later and its fixed :D
Well, i got the dynamic module loading done :D
I have added a dnInitialize() function that funs before all other networking functions can. This initializes the sockets and loads divplug.dll (has the allocation function in it). and similarly a dnShutdown() which shutsdown and cleans up the sockets.
Cancel That !!
I decided to keep it all high level classes that run over the sub-level API.
All is working well :D
Well, I managed to jack the fps of the tile rendering up to 20fps, by increasing the tile size to 20meters and decreasing the subdivision to its lowest setting. It looks like crap though =(. So I will still be working on new ideas =).
By the way, in the demo you all got, the map was a 4x4 grid, with 20x20 quads/tle, or 12800 triangles. Just as a reference =).
Z.
Well, our new Linux server is up and running, and I have an internet connection on my dev box =).
Z.
Cool.
At the moment the server is very CPU intensive so i am needing to sort that out. Though im not too sure on how.
I think the problem is in the threading. I think the process is set too high or summat. Gotta look into thread properties.
Yup, the problem is with the threads.
Things ent going to well here. The networking seems to have decided to **** up when i run it from a win32 app but runs fine in a console app :(
http://www.gamedev.net/reference/art...rticle1804.asp
Thankfully this page turned up today.
Will read through it and see if anything useful could be addapted.
I have narrowed my console client connecting to win32 server problem down to the UDP not connecting properly or at least not receiving data. Could this be becuase its a console app connecting to a win32 ??
----
That document shows to use a certain socket type which should stop loops which would otherwise add extra CPU cycles. I may have to scrap the HawkNL hybrid or change a load of it. Or it could be the way im using it.
****ING YES **** **** YAY
I got it to work at last. The problem was that to check a UDP is working HawkNL sends a string and waits for a reply. The problem was when i was telling it to check the socket for data i was receiving that string instead. I added a 2 second delay and it works now.
I will sort out some kind of thing out to find once it has received that string coz thats better than a 2sec delay.
HEHE im happy :D
Nice work, Psy! I am going to be working on a new version of the console, that will support objects. Eventually, the entire game will be able to be played from the command console =).
Z.
That could either be fun or very weird. would u wanna give the player full control over objects via the console ??
That would allow for things such as training videos from other programs, but we can do that through internal use of things like Half-Life .DEM (Demo) files.
Not full access, but the same amount that they would get from keyboard/mouse access, and then some. For instance, to create a new, say, footman, from the console, you Would do something like this:
Basically, the above commands make a peasant build a barracks in place. When that building is complete (the Barracks01 object wont become availible until it is), it is ordered to spawn a footman. It then trains the footman. While that is going on, the player sets a waypoint with the "Global" object (a standard object, like cout). When the footman is complete, it is ordered to go to waypoint 01, which is at 1.0f, 3.4f.Code:>Peasant01.Build("Barracks01");
: Building....
>Barracks01.Spawn("Footman01");
: Training....
World.SetWaypoint("01", 1000, 3400);
: Waypoint Active!
Footman01.GotoWP("01");
: Going....
The current implementation of the console CAN actually carry out this style of commands, with a wrapper to add the object code in.
Z.
I could even make it so that all keyboard/mouse commands are translated into console commands, and parsed by the console.
Z.
As long as it's a direct link - if it slows the game down even a titch it'll have to go (the keyboard & mouse -> console). Sound reasonable? ;)
I think I can keep the speeds up. This is what halflife does, If im not mistaken =).
Z.
Ive got DirectInput running both mouse and keyboard in the UI system.
Z.
Oh, Sas. I wanted to ask you this =).
I am getting a wireless modem for my Palm V*. I wanted to ask you if you could have two versions of the CR fora, one regular, and one straight text and hyperlinks for me =).
Z.
* I got a great deal on eBay. The modem is normally $369.00. I got mine for $20.50 =).
These new things all sound pretty cool.
Zaei, i agree with Sas, if putting all the stuff through the console slows it down scrap it. If not, run with it.
Now i have the networking running i will start sorting out some applications to test it. Im also thinking of putting the Protocol class back into it because this allows for a much quicker/easier implementation of new parts to the server and client. probably only for when its LOBBY and GAME state so the actual connecting code will never be seen in the engine.
Not sure how much work i will get done this weekend coz im going out Saturday.
Sas - On the planning it sound s abit weird, im not really a game player so im not sure if the "gaming world" would like that so i leave it open to the others.
The AI should stop the units from jamming or getting stuck, tis a must !!!
View wise, something like AoE i think would be best.
Since ToW is introducing all of these new concepts, we had decided at the beginning to allow a "Classic" mode of play. This is where houses give "food", units are "built", and all the rest of this unrealism.
And I'm still thinking about the planning phase, so is there any way I could make it better?
For the planning and strategy, I was planning to give players access to a sector map, where they could plan attacks, and such. basically, the idea is that when a unit is trained, it is automatically assigned to a unit (either a unit of all the same unit type, or mixed, the player decides). You will alos be able to give these units a creative name =). Then, there would be two selection modes, unit and individual. When in individual mode, you select individuals. In unit selection mode, you select the entire unit, and control it as one group. Many games limit the number of groups you can have at one time, so they lose out on this. In the planning phase, you will be able to set paths for units. For instance, a flanking attack would have both units circle around the enemy forces (this is where recon comes in, the AI will automatically adjust to go to the last enemy sighting). At a prearranged signal, both units attack.
Oh, and I doubt that the console thing will do anything to slow the game down. I thought that my stack tracing might have been slowing the game down, by adding an n length string to a buffer and removing it for every single function called, but there was no significant frame rate change. Also, I have my control system ideas (it uses abstract classes, so that I can have PlayerControl, and AIControl classes, and use them transparently), which limit the number of actions that can be performed each frame to 1 (so the AI doesnt have a huge advantage).
I like the idea about backup plans.
I would prefer a full radius viewpoint, because it is easiest. I dont know if we are going to be doing FOW, but I dont think that it would be very realistic if an entire enemy unit could walk up behind an individual without them noticing =). Perhaps we could have a half radius in front to the full vision range, and a halfradius behind with full vision range - 1 to simulate hearing.
Z.
That looks bitching!Quote:
Originally posted by Zaei
Not full access, but the same amount that they would get from keyboard/mouse access, and then some.
The current implementation of the console CAN actually carry out this style of commands, with a wrapper to add the object code in.
Z.
I want one.
:pQuote:
Originally posted by Arbiter
That looks bitching!
[IGNORE] lol - playing with the quote thing [/IGNORE]
=).
Z.
I've got DInput up and running, and taking input =). Now I just need to integrate the system in with the Engine, and set up the callback system.
Z.
Input callbacks are working =). They look like VB calls:
I have callbacks for key down and up, mouse button down and up, mouse move, and mouse wheel scroll.Code:void TimesOfWar_Mod::TOW_MouseButtonDown(int button)
{
}
Z.
Hum.
About the viewpoint, how about this deal?
http://www.vbforums.com/attachment.php?s=&postid=948169
The faintest red is the range of hearing, the middle red is the behind viewpoint, and the brightest red is the front viewing range.
Is that what you meant, or have I gone off on a totally different way?
Actually you know what, let's have a full radius ;)
Full radius is fine =).
I got fonts and text display up and running tonight, from scratch =). Its not perfect yet, but it works =).
Z.
I'm just dropping by to see how things are. I hope your game is going right. i can't rejoin yet, I'm just borrowing my dad's internet connection. :)
Too bad. Nice to hear from you again though! ;)
Funny thing I found is that my email is still listed in the Crystal Rain TOW developers list!:D Do you still use that site?
If you want to be there in the new version, you're there, as long as you're going to contribute at one point in time to the end development. However, if all you can give is advice and the odd idea, I can list you under "Creative Consultant", if you'd like. By the way, that site hasn't been updated. The new (and not-yet-finished-but-soon-to-be-that-way) site is at http://www.crystal-rain.com/preview/.