Jump to content
Nyerguds

1.06c development topic

Recommended Posts

Thanks for the patch. Moddb has been updated. Sonic/news staff, please put this on the front page.

Edited by G Daddy

Share this post


Link to post

Hm, I think I can do that myself, actually :)

Share this post


Link to post

Great, thank you !

If I may ask, why haven't you released the video packs yet ?

There seems to be a bit of a problem with the video packs...

 

See, the videos system I designed works this way:

  • The main movies pack is a movies.mix + update.mix in the game folder. The movies.mix file contains ALL videos for the basic language, and the update.mix contains the vqp stretch palettes for stretching them from 320x200 to 640x400.
  • If, for example, French is added as video addon pack, that pack contains only the briefing videos and other videos with spoken language. They are put as loose vqa+vqp files in a subfolder in the game folder with the same name as the language code, so in this case, "fre". The special option "LangPath" in conquer.ini makes sure the game automatically uses a subdirectory named like the language code as CD.

With this configuration, the loose files in the language folder override the videos in movies.mix in the game folder. However, if there are loose vqa video files in the game folder itself, these take absolute priority.

 

The problem, quite specifically, is the German First Decade installation of C&C95. It contains the movies.mix from the Covert Ops CD, and the videos from the GDI and Nod movies.mix files are dumped in the folder as loose vqa files. This thoroughly messes up the system, since it will prevent any video addon from working correctly.

 

 

The only way to somewhat fix this problem that I can think of, is giving a warning if one or more files inside a language addon pack are detected in the main folder. The warning would then warn the user that the addon pack won't work or will only partially work, and advise the user to install a clean base pack first. That requires putting a function checking all those files into every video addon pack installer, but that's not too hard.

 

On a related note, should I let the base install packs clean out loose vqa and vqp files in the main folder that are inside its own movies.mix/update.mix?

Share this post


Link to post

On a related note, should I let the base install packs clean out loose vqa and vqp files in the main folder that are inside its own movies.mix/update.mix?

I would agree with that, there are already so much files in the game folder, it's hard to know what's what. But maybe not everyone would like to delete them. Renaming them, or moving them into some backup directory is a good option to me.

 

PS : I'm really starting to hate this new forum lol

I keep mixing up the Edit (quite invisible) and Quote buttons. Very annoying.

Edited by Kamikave

Share this post


Link to post

Hm. Renaming/moving gives a while lot more scripting for me though. And it'll prevent a nice cleanup for the German TFD by installing the German videos base pack.

 

Maybe I'll just give a warning that the vqas will be deleted, with a cancel option so they can abort the setup at that point if they wish.

 

PS : I'm really starting to hate this new forum lol

I keep mixing up the Edit (quite invisible) and Quote buttons. Very annoying.

Yes, those invisible buttons are a horrible idea, and whoever thought it up should be fired. Out of an airplane. Strapped to a missile.

I've often accidentally deleted posts because I use middle mouse button to scroll, and middle-mouse clicking Delete skips the confirmation message -_-

Share this post


Link to post

I've often accidentally deleted posts because I use middle mouse button to scroll, and middle-mouse clicking Delete skips the confirmation message -_-

Not to drag this off topic, but are you sure about that? I intentionally used the mouse wheel to click on delete and it didn't skip the confirmation...

Share this post


Link to post

Middle mouse opens in a new tab. It ignores the click-action javascript which gives the message box.

 

On Opera anyway.

Share this post


Link to post

Damn... it appears I messed up a detail in the full game Installer. The desktop shortcut for cncnet just points to C&C95.exe -_-

 

It's reuploaded now, and I put a news message on ModDB. Will take a while to show up though (as usual).

Share this post


Link to post

Well, nice work with the quick bug finding and fix at least! Also, I know there is some wy to disable the desura download, as A Path Beyond had a number of problems with it, and now disabled theirs.

Share this post


Link to post

bah, looks like the file reupload has to be re-authorized on moddb too X_x

 

Well it's on arsaneus-design at least.

Share this post


Link to post

Well, nice work with the quick bug finding and fix at least! Also, I know there is some wy to disable the desura download, as A Path Beyond had a number of problems with it, and now disabled theirs.

I'm not so sure about that... it seems mods without recent updates simply don't have it, but anything newly updated now is added on Desura too.

 

The odd part is that on Desura you have to fill in a form (related to license, ownership and all that) to publish your mod... and I never did that. So I don't know if the Desura link even works.

Share this post


Link to post

Nyerguds,

 

I'm not interested in this issue but I've found in some INIs the following 3 lines:

 

[ ]*

Edge=None

Credits=26507

 

* - I've put a space between the brackets so you could see they are brackets

 

Do you know if this is some sort of cheat?

Since I've seen no function besides crashing XCC, I've been erasing them...

Share this post


Link to post

Ehh? That seems like an empty house header. The game will simply ignore that.

Share this post


Link to post

Whoo, DelphiDie from the CnCNet chat has been helping me with quite a lot of stuff in the game. Problems he found so far:

 

-One of the AI taunt strings in German crashed the game because it was too long, which made it corrupt the internal memory by writing beyond the reserved space. The taunt function can now handle longer strings, and the string has been shortened to actually fit on the screen in the 640x400 minimum resolution.

-The Comm Center, Tech Center and all base defense buildings detect stealth, but for some reason, the Advanced Comm Center didn't. This has now been changed.

-There seems to be a way for people to get both GDI and Nod construction options in multiplayer. This is cheating, and has been remedied.

 

 

Since these are actual fixes, I'm strongly considering releasing r4, and looking at the severity of the cheat, I won't wait too long with it, either.

 

The only additional change I still need to implement is -finally- fixing the client side of LAN games, to make them show the four game modes correctly.

Share this post


Link to post

I never noticed that the advanced comm center didn't detect stealth.

Speaking of fixes, I guess you didn't have time to look into the commando audio bug ? :rolleyes:

Share this post


Link to post

bugs detected 245 hours after relase? :D

 

The Advanced Comm Stuff wheren't for the Nod Death Squad mission?

Share this post


Link to post

Pichorra, none of these bugs are caused by me. The German thing is due to using German strings on the English-optimized game exe, true, but it's still the translators' fault for making a string that doesn't even fit on the fricking screen in the original resolution.

 

And Sensors only means it detects stuff actually touching it. You can perfectly do Death Squad without touching the Advanced Comm. Center. The optimal position for attacking it with stealths is south-west of the building, so you can attack it but the AGT can't fire at you. That's several cells away from the actual building.

 

Kamikave: You mean the double voice when bombing? No, I've been looking into the mouse cursor at the moment. Kinda neat how that works. The function that changes the mouse cursor to a different image is the same one that shows the tooltips, apparently. Maybe I can fix the bug that makes it not show tooltips on big clumps of trees.

Share this post


Link to post

Kamikave: You mean the double voice when bombing? No, I've been looking into the mouse cursor at the moment. Kinda neat how that works. The function that changes the mouse cursor to a different image is the same one that shows the tooltips, apparently. Maybe I can fix the bug that makes it not show tooltips on big clumps of trees.

Hum... That's funny. I never considered that to be a bug. I just assumed the devs were too lazy to put a tooltip to every tree type lol

Also, if I remember correctly, only the destructible trees have tooltips. Maybe it was intended.

 

Edit : It reminds me, aren't trees indestructible once they're burned ? Is that a bug too ?

Edited by Kamikave

Share this post


Link to post

They're all terrain objects. There's no reason why tree clumps should be handled differently. It just shows a No Move cursor on them for some odd reason, and the fact it does that makes it never even pass the code path that could lead to a tooltip.

 

I'm trying to figure out why it wants to give a No Move cursor on them (which isn't in the function I'm researching, but the one that calls it). If that fails, I could just make sure it tries to give a tooltip even with the No Move cursor.

 

As for trees becoming indestructible when burned, I honestly have no idea; that burned state is a really odd thing. I tried to make a clone Fire warhead once and failed miserably. Fire and burning is one of the most annoying exceptions in the game.

Share this post


Link to post

Speaking of fixes, I guess you didn't have time to look into the commando audio bug ? :rolleyes:

I just fixed the double response when bombing bug :)

 

The code to play the bombing response turned out to be a totally different piece of code than the normal response playing, which explains why the two conflicted.

 

The real code that was responsible for playing standard responses luckily received some kind of number, indicating which command was being executed. This was only used to make a difference between the Move and Attack commands though, and any command that wasn't Attack just played the Move response (deploying, entering a transport, infiltrating a building, guarding a unit with ctrl+alt, and of course, bombing a building).

 

So after debugging it to see what the bombing command's ID was, it wasn't hard to add an extra check to made it completely skip the response playing function :)

 

 

I did notice a bit of a problem, though...

 

The fact the bombing voice is done per bombing command rather than per mouse click has some odd side effects. One effect of this is that it's also played for every separate commando you got selected, making it horribly loud when you're giving the command with several commandos. Another, however, is that the voice is actually played from a specific spot on the map, just like explosion sounds, meaning you won't hear the bombing response if the selected commando isn't in your visible screen. This is done so you'd be alerted to an enemy commando bombing your base in multiplayer.

 

The only thing I could do to fix this is to make both the map-sound-response and the player UI response play the same sound. But then you'll still hear it twice... any ideas on that one?

 

I'll look into disabling the bombing effect if the command is given by the player, meaning I can simply put it in the responses list instead, but I really don't know if I'll succeed in that.

 

Share this post


Link to post

I just fixed the double response when bombing bug :)

You're the best :D

 

The only thing I could do to fix this is to make both the map-sound-response and the player UI response play the same sound. But then you'll still hear it twice... any ideas on that one?

 

I'll look into disabling the bombing effect if the command is given by the player, meaning I can simply put it in the responses list instead, but I really don't know if I'll succeed in that.

Hum... that's a tricky one. Could you add some check so that if the sound is playing once, it isn't the second time ? Something like "if map-sound-response is played, don't play player UI" ? I don't know if it's even possible, I'm just throwing ideas lol.

 

Edit : That reminds me of something... again. Did you notice how the AI commandos never blows the player buildings ? He just attack it like a soldier, with his gun, which kind of defeat the purpose lol. I'm guessing the AI doesn't know how to use the bombing command.

Edited by Kamikave

Share this post


Link to post

I fixed it now, just need to test it in MP to make sure it works as I intended.

 

As I said though, the 2 voices are controlled from totally different functions, making it impossible to do a "if the sound is played once, don't play it again" check.

 

The way I fixed it is this:

 

  • The function that plays a response when giving a unit a command with a mouse click originally only played 'move' and 'attack' voices. It now filters out and plays the 'sabotage' voice, too.
  • The code that originally handled the commando sabotage voice actually plays the clip whenever any commando on the map is given a Sabotage command, and it plays the sound on the actual position of that commando. It now has a check so it doesn't play the voice clip if the commando performing the action is owned by the current player, since then the mouse click response function already played it.

 

This means that when giving a Sabotage command, you'll hear the bombing response as mouse-click response just like with any other unit response. But if someone else performs a Sabotage command, it'll be played in your game as map sound.

 

[edit]

 

Test succeeded, thanks to epicelite. It works perfectly as intended :)

 

---

 

Hmm, the "Unrevealed Terrain" tooltip originally only showed up before mission 4. This same behaviour was in the multiplayer maps too though.

 

Currently I just made it always enabled; seemed simpler and more intuitive than making a multiplayer exception on the current level exception code. What do you guys think?

Share this post


Link to post

I remade my custom strings reading function to allow multiple sources (both language packs and mods) to override strings. The original system would remake the entire custom strings list if a mod also used it after a language pack already had. The new one will combine the strings on one list, overwriting strings from the language with those from a mod if needed.

 

 

I also implemented the code to replace the ` character by a new line. Basically, this means language packs no longer need a strings file, at all. They can put their strings in an ini.

 

The huge advantage of this system is that if I update the game to contain more strings, language packs that are outdated and don't contain all these strings will simply have the missing ones show up in English, instead of not showing up at all :)

Share this post


Link to post

Hmm, the "Unrevealed Terrain" tooltip originally only showed up before mission 4. This same behaviour was in the multiplayer maps too though.

 

Currently I just made it always enabled; seemed simpler and more intuitive than making a multiplayer exception on the current level exception code. What do you guys think?

 

The game now shows tooltips on trees on the first 3 multiplayer maps (this was campaign logic that wasn't disabled in multiplayer)

 

Hum... Not sure I understand. Is it always enabled, or only in the first three maps ? Either I'm really tired, or something doesn't add up ^^'

Edited by Kamikave

Share this post


Link to post

The 2 things you quoted are about different tooltips. The first one is about the "Unrevealed Terrain" tooltip. The second is about the names shown on trees :P

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×