Introducing wcdx - Kilrathi Saga for modern Windows

wcnut

Rear Admiral
I know right! Actually I have been waiting for this patch for years :). Winmm was the missing link for Xwing vs Tiefighter and Xwing Alliance in OSX, and I didn't know it until today. I just blamed it on direct input and prayed that someone would fix it.
 
Last edited:

Stinger

Vice Admiral
I've just released wcdx-1.2-beta3. In addition to fxing the planets loading bug, I've corrected what was possibly the most crucial oversight of the entire KS release:

poster.png


That's right, I've added the poster back into the game! Originally added for Secret Missions 2, this highly important feature was left out of the Kilrathi Saga editions entirely. I have recreated the functionality from scratch, so the poster is now available for your viewing pleasure. Not only that, but I've added the functionality to all three games: Wing Commander 1, Secret Missions, and Secret Missions 2!

You're welcome.
 

Whistler

Commodore
Stinger... You're a hero.
Too late.

Stinger's already a hero for the music and backgrounds returning properly. Anything else is above & beyond IMHO.

Never saw a close-up of that poster before. Hmm...Leisure Suit Larry flashback.
 

wcnut

Rear Admiral
I'm sorry to report there is still one more bug... When you take damage and one of your displays are suppose to go out, you hear static, but you don't see it on the display. In fact I wonder if any of the in cockpit damage effects happens. (sparks and the like)
 
Last edited:

Stinger

Vice Admiral
Got it, thanks; I think I noticed that years ago, but forgot about it. That's likely too big a thing to tackle for 1.2, but I'll give it a shot for 1.2.1.
 

delMar

Rear Admiral
can it be that wcdx SM2 does still have the names of Paladin and Bossman instead of Jazz and Doomsday?
 

Tarvis

2nd Lieutenant
This is great stuff, but I wanted to report a couple issues with the mouse that makes this frustrating to play:

1. Occasionally (and very frequently when using a keyboard key, and even more frequently if holding one down such as Tab) the mouse cursor will momentarily jump to the top left of the screen, causing your ship to turn up and left even if you're using a joystick. It appears what's happening is the mouse is jumping to unscaled window coordinates, as if it was only in a 320x200 window.
2. At the start of a mission, the mouse starts by default all the way down and to the right, causing your ship to spin around wildly in circles as soon as you launch until you center it. Also very annoying if you play with a Joystick. It should start centered instead
3. The mouse is not contained to the game window, so if you play with a mouse on a multi-monitor setup you frequently click outside of the game, minimizing it.
4. Occasionally, alt-tabbing out and back causes the window display to be lost forever (stuck on black or the previous frame before switching)

If it helps, my OS is Windows 8.1
 

Stinger

Vice Admiral
Thanks, @Tarvis; I'll add those to the list.

Can you tell me which game you were playing? Since I've had to reproduce my work in each one, there are undoubtedly several small differences in behavior. Some of this stuff I knew about already (losing the D3D device is not surprising, since I didn't write any recovery code), but the mouse behavior is somewhat surprising. You're probably right about the mouse coordinates not being translated, but I thought I'd removed all the places that reset the system cursor location.
 

Tarvis

2nd Lieutenant
Wing Commander 1, Vega campaign

Occasionally I notice that sometimes, rarely, the window turns grey for an instant when it happens and I can see the spinning blue cursor, like Windows does when it shows a program is not responding. Not sure if that helps narrow it down or not.
 

Stinger

Vice Admiral
I've just released 1.2-beta4, which addresses a number of issues:

1. Occasionally (and very frequently when using a keyboard key, and even more frequently if holding one down such as Tab) the mouse cursor will momentarily jump to the top left of the screen, causing your ship to turn up and left even if you're using a joystick. It appears what's happening is the mouse is jumping to unscaled window coordinates, as if it was only in a 320x200 window.
I've reworked mouse handling in Wing1 to work the same way as it does in SM1 and SM2; let me know if this fixes your issue.

3. The mouse is not contained to the game window, so if you play with a mouse on a multi-monitor setup you frequently click outside of the game, minimizing it.
This should be fixed now.

4. Occasionally, alt-tabbing out and back causes the window display to be lost forever (stuck on black or the previous frame before switching)
This should be fixed now.

Additional changes:
  • Fixed crash on minimize
  • Maximize button enables full-screen mode
 

Tarvis

2nd Lieutenant
Great! It totally fixed the mouse jumping around when clicking or pressing a keyboard key. Thanks a ton!

It's still a bit off-center after launching, but this could simply be that the cursor is left where you clicked on the Briefing door. It's not all the way down and to the right anymore, so the spinning isn't huge.
 

Stinger

Vice Admiral
Glad to hear it!

I'm a bit surprised that you're encountering mouse issues immediately after launching. I've been alternating between using keyboard and a gamepad and haven't had that happen yet. Are you moving the mouse around somehow? Nudging it, maybe?
 

Tarvis

2nd Lieutenant
More specifically, when launching, you fly straight. But as soon as you nudge the mouse even slightly, the initial position isn't the center of the screen, it's to the right. It seems it's left where it was when you clicked to start the briefing from the Barracks. Other than that, it works fine for the rest of the mission.
 

Stinger

Vice Admiral
Ah, I see; that makes a lot more sense. You are correct; the mouse isn't moving. I removed the calls to SetCursorPos for two reasons:
  1. If you're playing the game in a window, or if you've temporarily switched to another application, having the game wrench the cursor away from where you expected it to be can be jarring.
  2. The game used to set the graphics mode of the desktop to 320x200. SetCursorPos takes a location in desktop coordinates. All of the calls to SetCursorPos therefore used coordinates consistent with a 320x200 display. Since my other changes alter these circumstances, any calls to SetCursorPos would end up moving the cursor to the upper-left corner of the screen, which may not even include the game window.
I haven't fully decided yet what the best approach to this is. I could reimplement the cursor positioning only for full-screen mode, or maybe only if the game window is active, or only if the cursor is already positioned over the game window...
 
Top