Inverting mouse look - can it be done?

General discussion about Multiwinia

Moderators: jelco, bert_the_turtle

Bagpuss
level0
Posts: 4
Joined: Wed Apr 08, 2009 4:12 pm

Inverting mouse look - can it be done?

Postby Bagpuss » Wed Apr 08, 2009 4:17 pm

I've just got the game as part of MacHeist, and I really like it.

However, I am struggling with the controls as I can't invert the y-axis on the mouse.

I've tried editing the input_preferences.txt file from within main.dat, but I can't seem to get any changes to be recognised.

I've extracted main.dat, and now got a data directory inside Resources. If I leave main.dat in place, then the game doesn't seem to use the information in the 'data' directory. If I remove the main.dat file, then the game crashes at startup with the following:

Process: Multiwinia [3754]
Path: /Applications/Multiwinia.app/Contents/MacOS/Multiwinia
Identifier: uk.co.introversion.multiwinia
Version: Multiwinia 1.3.0 (1.3.0)
Code Type: X86 (Native)
Parent Process: launchd [166]

Date/Time: 2009-04-07 17:42:52.868 +0100
OS Version: Mac OS X 10.5.6 (9G55)
Report Version: 6

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread: 1

Thread 0:
0 libSystem.B.dylib 0x94c8a202 lstat + 10
1 libSystem.B.dylib 0x94d126a3 fts_build + 870
2 libSystem.B.dylib 0x94c8cf03 fts_read + 380
3 com.example.sparkeplus 0x00572055 -[SUAppcast incrementalItems] + 1080
4 com.example.sparkeplus 0x0056ee93 -[SUUpdater appcastDidFinishLoading:] + 344
5 com.apple.Foundation 0x93eea3e3 __NSThreadPerformPerform + 547
6 com.apple.CoreFoundation 0x942ba5f5 CFRunLoopRunSpecific + 3141
7 com.apple.CoreFoundation 0x942bacd8 CFRunLoopRunInMode + 88
8 com.apple.HIToolbox 0x933732c0 RunCurrentEventLoopInMode + 283
9 com.apple.HIToolbox 0x93373012 ReceiveNextEventCommon + 175
10 com.apple.HIToolbox 0x93372f4d BlockUntilNextEventMatchingListInMode + 106
11 com.apple.AppKit 0x964c1d7d _DPSNextEvent + 657
12 com.apple.AppKit 0x964c1630 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 128
13 SDL 0x003902e0 SDL_SoftStretch + 10016
14 SDL 0x00361725 SDL_PollEvent + 101
15 uk.co.introversion.multiwinia 0x00089347 0x1000 + 557895
16 uk.co.introversion.multiwinia 0x00089374 0x1000 + 557940
17 uk.co.introversion.multiwinia 0x00237ac4 0x1000 + 2321092
18 uk.co.introversion.multiwinia 0x00237baa 0x1000 + 2321322
19 uk.co.introversion.multiwinia 0x000055aa 0x1000 + 17834
20 uk.co.introversion.multiwinia 0x000a0d99 0x1000 + 654745
21 uk.co.introversion.multiwinia 0x000a0edb 0x1000 + 655067
22 uk.co.introversion.multiwinia 0x000a0fa1 0x1000 + 655265
23 uk.co.introversion.multiwinia 0x00089c5a 0x1000 + 560218
24 uk.co.introversion.multiwinia 0x0000312b 0x1000 + 8491
25 com.apple.Foundation 0x93ee8f1c _nsnote_callback + 364
26 com.apple.CoreFoundation 0x9429b8da __CFXNotificationPost + 362
27 com.apple.CoreFoundation 0x9429bbb3 _CFXNotificationPostNotification + 179
28 com.apple.Foundation 0x93ee6080 -[NSNotificationCenter postNotificationName:object:userInfo:] + 128
29 com.apple.Foundation 0x93eef8c8 -[NSNotificationCenter postNotificationName:object:] + 56
30 com.apple.AppKit 0x9654b49a -[NSApplication _postDidFinishNotification] + 125
31 com.apple.AppKit 0x9654b3a9 -[NSApplication _sendFinishLaunchingNotification] + 77
32 com.apple.AppKit 0x964c4ec3 -[NSApplication(NSAppleEventHandling) _handleAEOpen:] + 284
33 com.apple.AppKit 0x964c46bc -[NSApplication(NSAppleEventHandling) _handleCoreEvent:withReplyEvent:] + 98
34 com.apple.Foundation 0x93f0e43f -[NSAppleEventManager dispatchRawAppleEvent:withRawReply:handlerRefCon:] + 655
35 com.apple.Foundation 0x93f0e14f _NSAppleEventManagerGenericHandler + 223
36 com.apple.AE 0x93174648 aeDispatchAppleEvent(AEDesc const*, AEDesc*, unsigned long, unsigned char*) + 144
37 com.apple.AE 0x9317457e dispatchEventAndSendReply(AEDesc const*, AEDesc*) + 44
38 com.apple.AE 0x93174425 aeProcessAppleEvent + 177
39 com.apple.HIToolbox 0x933759a5 AEProcessAppleEvent + 38
40 com.apple.AppKit 0x964c1f91 _DPSNextEvent + 1189
41 com.apple.AppKit 0x964c1630 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 128
42 com.apple.AppKit 0x964ba66b -[NSApplication run] + 795
43 com.apple.AppKit 0x964878a4 NSApplicationMain + 574
44 uk.co.introversion.multiwinia 0x00003585 0x1000 + 9605
45 uk.co.introversion.multiwinia 0x000022d2 0x1000 + 4818
46 uk.co.introversion.multiwinia 0x000021f9 0x1000 + 4601

Thread 1 Crashed:
0 libSystem.B.dylib 0x94d3b136 __semwait_signal_nocancel + 10
1 libSystem.B.dylib 0x94d34013 usleep$NOCANCEL$UNIX2003 + 61
2 libSystem.B.dylib 0x94d4b685 abort + 85
3 libstdc++.6.dylib 0x95dc9005 0x95d81000 + 294917
4 libstdc++.6.dylib 0x95dc710c __gxx_personality_v0 + 1108
5 libstdc++.6.dylib 0x95dc714b std::terminate() + 29
6 libstdc++.6.dylib 0x95dc72b1 __cxa_rethrow + 79
7 uk.co.introversion.multiwinia 0x001d8ce0 0x1000 + 1932512
8 uk.co.introversion.multiwinia 0x00021871 0x1000 + 133233
9 uk.co.introversion.multiwinia 0x00027af0 0x1000 + 158448
10 uk.co.introversion.multiwinia 0x00005b7c 0x1000 + 19324
11 uk.co.introversion.multiwinia 0x00236d50 0x1000 + 2317648
12 libSystem.B.dylib 0x94c90095 _pthread_start + 321
13 libSystem.B.dylib 0x94c8ff52 thread_start + 34


I've truncated the crash log, as thread 1 is where we are crashing.

Does anyone know of a working method by which I can invert the y-axis on the mouse?

Could this be added as an option under settings?

I've already posted this request on the Ambrosia forum, but they suggested I post here.

Thanks,

Bagpuss.
Bagpuss
level0
Posts: 4
Joined: Wed Apr 08, 2009 4:12 pm

Postby Bagpuss » Thu Apr 09, 2009 2:07 pm

Thanks for the reply, jelco.

From what I've read on the Ambrosia forums, it is possible to extract the main.dat file, and get the Mac to read the resulting data subdirectory.

I've followed all the relevant steps, but just can't seem to get Multiwinia to pay any attention. I've tried simple changes to the controls, like swapping 'w' and 's' around, but it doesn't work. The controls remain as standard.

Given that every FPS now supports 'invert mouse' in the control options, I like to ask that Multiwinia does the same. I find an inverted y axis to be more intuitive, probably because I do a lot of flightsim stuff. It's very difficult to change the habit learned from 20 years of playing flightsims.

Thanks,

Bagpuss.
User avatar
xander
level5
level5
Posts: 16869
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Thu Apr 09, 2009 2:46 pm

Please do the following:
  1. Navigate to /Applications/Utilities/, and open Terminal.app. This should open a terminal window somewhere. Keep this window accessible.
  2. Show the package contents for the Multiwinia app, and navigate to the Resources/ directory.
  3. In the terminal window, type "cd " (yes, there is an extra space there), but do not hit enter. Instead, from your Finder window, drag the Resources/ directory to the terminal window. This should paste in a directory path. Now hit enter in the terminal window.
  4. If you are comfortable with the command line, skip steps 1-3, and simply navigate to the correct directory. It should be something like "/Application/Multiwinia.app/Content/Resources", depending on where you have installed Multiwinia.
  5. Type "ls", then hit enter.
  6. Type "ls data/", then hit enter.
  7. Type "ls data/input/" then hit enter.
  8. Paste all of the the output here, or to pastebin.com and provide us with a link. When you paste the output, please paste everything from where you first typed "ls" and hit enter, all the way to the end of the terminal output, including any errors which were reported. With that information, we may be able to offer some help.


Bagpuss wrote:Given that every FPS now supports 'invert mouse' in the control options...

Multiwinia is not a flight sim, and it is not an FPS. It is an RTS. Perhaps there are RTSes out there with invertible mice (though I have never played any of them), but Multiwinia is not such an RTS. Furthermore, it is unlikely that it is ever going to change. People have been occasionally complaining about lack of an invertible mouse for four or five years (since the release of Darwinia), and IV have not yet added that option. That is not to say that it will ever be added, but that you really shouldn't hold your breath.

Instead, I would suggest that you just get used to the way that Multiwinia does things. It might help to change the way that you think about what the mouse is doing. You do not use the mouse the move the camera. Rather, you use the mouse to move the cursor on the ground. The camera follows the cursor. It might be easier to adapt to the control scheme with that in mind.

xander

xander
Bagpuss
level0
Posts: 4
Joined: Wed Apr 08, 2009 4:12 pm

Postby Bagpuss » Thu Apr 09, 2009 4:28 pm

Hi Xander,

Here's the information you requested:

MacPro:Resources testuser$ pwd
/Applications/Multiwinia.app/Contents/Resources

MacPro:Resources testuser$ ls
English.lproj Multiwinia.icns data init.dat language.dat main.dat menusounds.dat sounds.dat

MacPro:Resources testuser$ ls data
ambx game_demo2.txt multiwinia-testbed.txt sprites
animations game_unlockall.txt multiwinia.txt stats.txt
betatesters.txt gestures.txt multiwinia_betatesters.txt terrain
default_preferences.txt icons mwhelp textures
effects.txt input sepulveda thumbnails
fireball.ambx levels shaders untitled gradients.grd
game.txt locations.txt shapes
game_demo.txt marketing sounds.txt

MacPro:Resources testuser$ ls data/input
input_preferences.txt input_preferences_mac.txt locales.txt
input_preferences_darwinia.txt keyboards



With regards to the invert mouse thing, I just think it would be a good idea to implement. Likewise, the ability to easily alter the control keys would be much appreciated (without needing to edit text files).

User definable controls have been around since my early days with the C64, BBC B and Spectrum. They were a good idea then, and still are now. It all makes for a better experience for the player, and costs so little in terms of coding time to actually do.

Bagpuss.
User avatar
xander
level5
level5
Posts: 16869
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Thu Apr 09, 2009 6:30 pm

The file structure looks good, and you seem to have been editing the correct file. As such, I actually tried making changes to the release version---initially, it appears that Ambrosia removed that functionality. It was an unsupported hack in the first place, so I can't say that I am overly surprised. I sent a message the ASW beta list, and hopefully someone will send me a reply at some point, answering my questions.

Bagpuss wrote:With regards to the invert mouse thing, I just think it would be a good idea to implement. Likewise, the ability to easily alter the control keys would be much appreciated (without needing to edit text files).

User definable controls have been around since my early days with the C64, BBC B and Spectrum. They were a good idea then, and still are now. It all makes for a better experience for the player, and costs so little in terms of coding time to actually do.

You make very reasonable arguments, but I am not the person you need to be debating this with. You are preaching to the choir. I agree with you that these things should change. However, with regard to the inversion of the mouse, I am pretty certain that it is never going to change (again, IV have had years to change it, and have not). With regard to custom controls, I agree that it is a travesty that they are not included, but, again, there is nothing that we can do about it.

xander
Bagpuss
level0
Posts: 4
Joined: Wed Apr 08, 2009 4:12 pm

Postby Bagpuss » Sat Apr 11, 2009 11:28 am

Thanks for you help, Xander. At least I know I'm not going mad now.

Being honest, I can't be too mad about this, as I effectively got Multiwinia for nothing as part of the MacHeist bundle.

It would be nice to think that folks from IV were reading this forum, and would take user opinions into account with a future update. Do you know of an alternative way to contact them? I've tried looking at their website, but I can't seem to find a direct contact method.

Thanks again,

Bagpuss.
User avatar
xander
level5
level5
Posts: 16869
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Sat Apr 11, 2009 3:32 pm

I suppose that you could try emailing support@introversion.co.uk , though I am pretty sure that the folk at IV read most of the topics that are posted (or, at the very least, know what is going on).

Also, I have still not heard by from any of the ASW devs regarding the message I sent out earlier. They may just be ignoring me. ;)

xander

Return to “General”

Who is online

Users browsing this forum: No registered users and 13 guests