I'll try to help, if I can ever get internet. I've even forgotten who I worked with! One question though. What happened to the part of the story I wrote? You probably had to change it for something else, right?
Printable View
I'll try to help, if I can ever get internet. I've even forgotten who I worked with! One question though. What happened to the part of the story I wrote? You probably had to change it for something else, right?
Good to hear from you KamiKazeKiwi :D
Nice going Zaei !
YAY, i finally found why it wasnt working. I was used sizeof instead of strlen, u use one for sending and one for receiving and i used da wrong one for this certain place.
All working KICK ASS perfect :D
i have now got the workings of messaging users working (the bones, of whispering though this is not complete yet). I now have implementation in the way of an invalid username/password/game/version being passed results in an error.
Once a game has been played through fully, ie a winner has been decided. what screen is going to show ?? will there be one with results on it ?? (have u played red alert ??)
Yes, Psy (you'll notice EVERY RTS has this ;)), so I'm sure we won't leave it out. It should have stats, awards, a cool timeline, and the option to save the game's log, so you can replay it ;). Maybe this is asking for too much, but for training you could maybe have a "ghost" civ that was your civ in a previous game. You can load up one of this demo files and add the civs as ghost civs ;)
LOL - I dont play many games, im more of a creator than player.
I will add a results screen to the end, well not the actual screen, but the implenetation i nnetworking, so the server can tell the clients to go to it.
I have added an OnReady callback to the networking.
This is so the client can tell the engine when to send the name of the game it wants to join. This will probably be used for other parts too.
By the end of this week i should have a demo of the networking out. It will be similar to last time - a chat program - featuring:
- Current Talkers (Current Players)
- Single Chat Room (Lobby)
- Passworded Server (Locked Games)
- Whispering
hehe, oh that was short, but hey, all of the error handling will be set up perfectly so every error that can occur is handled. Everything will be coded exactly so it can almost be re-used as is for the actual game implementations.
I can now load textures using the TOW .texture format =). its actually a simple RAW format, using a converter i wrote in VB. I am still having a little trouble with the thing (For some reason, it keeps telling me the file is 2 bytes long), so I have hardcoded 256 as the texture height and width for the moment.
Z.
Ok, figured out the problem on that one =). Texture loading works =).
Z.
Kool =)
May i suggest Sastraxi and Zaei download a demo of Dungeon Seige (Microsoft), just been watching my bro play it and it is very nice. lots of inspiration there and a very good camera system. 32 rotation like ours by moving mouse to edge of screen. Zoom in and out with mouse wheel.
I got messgaing/whispering all working ship shape =)
Heres a little simple log from current runnings of the server.
Code:
Divinity Networking
--------------------------
Divnity Networking Initialized
Divnity Network Selected: DN_NETWORK_IP
Divnity Networking Server Started
Connection From 127.0.0.1:2532
OnHello
OnVersion
OnUsername
OnPassword
OnJoin
Richard Whispers: HELLO
Richard Says: hello
Disconnection From 0
Divnity Networking Server Stopped
Divnity Networking Terminated
I added transparency masking to the texture converter =).
Z.
The texture loading is nearly finished. I had a little problem with the colors (blue and red were switched), but that is fixed. I didnt notice the problem earlier because I was converting greyscale images (the font), but now its fixed. I need to implement the loading in the LoadTextureEx() method, adn then it will be finsihed =).
Z.
Is the '.texture' format compressed in any way? If not I suggest gzip, you know, the free zipping dll ;)
I dont really want to add any complexity to the format, since there isnt really a reason. The final downloadable will be compressed, so download size wont be a problem, and at that point, it doesnt really matter =).
Z.
I now have the plug-in dll supporting ip blocking :D
Excellent. Now, I think that a copy of ToW should be assigned an ID, and that ID is tied to your email address. It would leave that ID on the computer even after installed, pointing to a known program (ex. Internet Explorer), therefore making it so the only way to get a new ID is to reinstall windows and get a new email address.
That way dynamic IPs can be blocked as well if you know what I mean ;)
This is the most security we can get, seeing as retail games such as Half-Life have the code burned into the CD. Without this key, you cannot play over the network.
Yea, that should be best. lemme know when you have some kind of system built into the game / windows and i can probably stick this into the networking, im currently working on letting the other players know when a user joins the lobby.
Well, i got my modem today =) =). Spent 3 hours looking for some way to get Palm OS v3.5 or above, and finally found out that its free. Palm has the worst customer supoprt ever =(.
Anyway, We definatley need to have some sort of key thing, and what Sas has proposed sounds good to me =).
Psy: I was playing Dungeon Siege last night, and my conclusion is that it is Diablo in 3D =).
Z.
It is =)
But dont you think it has nice camera movement ??
Well, i should be starting on the UI very soon for my little demo application. THe only problem is at the moment that i want to design all the dialogs from the editor coz its a lot quicker, but i get problems when using DialogBox. Will sort it out soon !!
Are we going to have the server wait for players to = max players or are we gonna allow for players to join and leave as they wish ??
We can have several game modes, one of which allows players to join a game in progress. It would probably be best if you store the players in a linked list, so that they can be removed quickly.
Z.
New screenshot for you all =). This one is showing off the text engine.
http://www.vbforums.com/attachment.php?s=&postid=954723
Details: Those tiles are processed with the texture converter, and are .texture format =). The text is stored in a central location (the Core module), so it is accesible from anywhere in the engine.
Z.
What is with the little diagonal lines (they look to be tile length, and there are 2 of them on the bottom-left and bottom-right)?
Otherwise, cool in every respect.
I havent figured that out yet =). I think it might be an artifact from the texture conversion, but it doesnt seem to be apparent with the other textures... I will figure it out eventually =).
Z.
I've gotten just about every character in the ASCII set to render with the font engine, and it works perfectly. I also formalized the texture input for the font. Here it is:
I will probably move the 8x12 rules into the GameRules module that I will be building eventually.Code:The font texture is a grid of character cells.
Each cell is 8x12 pixels.
There are 26 cells in a row, and n number of rows.
Z.
Okay, that sounds cool. Will the console be logged to something like tow.log during gameplay, or will it be optional?
Cool pick.
At the moment a i have an array of connections which is allocated at run time so you can specify how many players. I will have a play with linked lists coz i have never really used them before.
I have set it so at the moment it waits for ReadyPlayers = Maximum (ie wait till the server is full) then it starts the game.
At the moment it just stores the text, but I can change it if you like (its like, 5 lines to add).
Z.
Zaei - shall I whip us up a .texture viewer?
I think you should, you could then make it part of the editor.
I have set the maximum string length to 32 for the moment (for data such as usernames/passwords) i think that is quite adequate.
That would be nifty, Sas. The format is simply a RAW format(straight data, nothing else), with 32bit colors (8 alpha, 8 red, 8 green, 8 red). To find the size, get the file length, and take the square root of that (all textures are square). I will send you a texture to do testing on =).
Psy: 32 should be fine.
Z.
The Line artifact that I was having with the texture was my fault. The alpha mask image that I was using had a line of white around the bottom/right borders. Its fixed now =).
Z.
Phew!
Here is the promised texture.
Z.
I had to double-zip it, or it wouldnt upload.
Z.
Today so far I fixed a minor bug crashing the client if the server closed and chucked the client, when logoff was being called.
Well, I feel a bit dumb =). I was trying to figure out where all of my disk space went, and then went looking in my HL folder. A while abck, I had a TFC script set that when ever I shot, i took a screen shot. I had 400 megs of pictures in there O.O!
Anyway, I had another idea for servers. Are we going to have dedicated servers as well as regular ones? If so, why not have the network module listening on a port for telnet clients to do remote server administration?
Z.
Dumb You !!
Not sure bout the telnet thing, its viable, but i think that if the server is non dedicated then the server sets the options, if its dedicated its left down to the players.
At the moment its deciding not to work properly at all for some reason, i spent ages fixing major bugs, now i have it wokring properly and was getting it to tell each other when a player leaves and then it wont work.
Remote Connection probably should be allowed for both types of games (yes, I did plan to have both). In the ToW console, there should also be a command for remote administration.
Ok. For standard servers, we should limit the console commands availible (perhaps a Game Console and a Server Console, as totally separate entities?)
Z.
Sas and i had a little convo over this and correct me if i'm wrong but i think the general outcome was to leave this out at the moment.
I wish to get the core parts of this thing working 100% (which its not yet as its all bust) before i go adding simple bells and whistels stuff like that which would add more code to complicate things which i dont need.
Dont worry about it, Psy. Once the core is implemented, it should be very easy to add console commands, and keep a listening port open for remote connections.
Z.
YAY
I found the bug that was pissin me off. I realised that i had left the ip the same as my old one when i sent it to my m8 to test it and didnt change it back (its hard coded atm). I was trying to read on the socket when it hadnt connected. I have now changed DivSock to return false when it cannot connect :D
Invitro, Igor, where are you guys? We need your music making genious!
I was going to post last night, but VBForums was down =(.
I got an idea yesterday about archers. From what I can tell, when archers worked as a unit, at longer ranges, they simply fired flights of arrows in the enemy's general direction. When the enemy closed in, they began to aim more. Shall we do this?
Z.
I know :(
About the archers, I think it's a great idea there. That would make them less effective at people rushing at them (a common occurance in other RTS games).
Got no work done this weekend - sorry :P
Was out at a gig :D
I got connections working properly. It tried 5 times at 1 second intervals to try find the server if not it bails.
I would say it would make them MORE efficient, because you can get more shots off, faster. Also, I believe that history sayst he same (I think it was English archers that could get a shot off every 3 seconds, and could tear a charging group of infantry apart). I just think that it will be far more realistic =)>
Z.
Should also have an advantage fighting to people below them and disadvantage above them, according to Sun Tzu's art of war.
Also according to physics.
That should be fairly easy to do. I will probably give bonuses to higher ground, based on the difference between height at the unit level at long range, and individual target level at short ranges.
Z.
FOOK
Tonight the connection handling seemed to not want to work, the client thought it was connected when it wasnt. I put the UDP back in and it ent working :(
Ack. You can get it working again, though, Psy =).
I believe that I am going to leave the terrain alone for now. If, at some later date, I feel like making improvements, I will, but for now, Its fine (~13 fps, on my card).
http://www.vbforums.com/attachment.php?s=&postid=965611
Here is a screen shot for you all. The text is blown up (2x), and the FPS is accurate. Is that an acceptable frame rate(for my card)?
Z.
You said your 3Dmarks are 500. I think that my computer should be able to handle it (about 3 times the performance of yours, at 1500). 45 fps? Yep, I think so.
Will this be most likely the average framerate ingame, or only for a few tiles?
My 3D mark score was 82 =).
If I can manage it, a max of 4 tiles will be visible at any one time, just like in the screen shot, though, that shot is actually rendering the full 16 tiles that are in that map, so it will be a little bit higher. Also, that is without any AI logic, so it will be lower. Say, 10-12 fps.
Z.