Jump to content

chiv's usability patches


Chilvence

Recommended Posts

I've been fiddling about with the interface for a few days to scratch some long time itches and as suggested I am going to post them in bite size chunks (in order to lessen the likelyhood of monitor defenestration by unsuspecting user)

 

 

I have a large list of other minor tweaks that I think will make the gameplay smoother which I will post here when they are ready

 

And if it doesnt work, well my day job is a chef so I probably cant help :)

Link to comment

Ah, now you are cooking with charcoal!

 

This is exactly the stuff that will make GemRB such a great platform to play IE games on in the near future - getting rid of old and outdated interfaces and limitations in support of fresh approaches shown here.

 

Keep up the good work Chilvence!

 

Color me impressed!

Link to comment

I've redone patch 1 more generally and the second part of patch 2 is in aswell (don't forget to change GUIEnhancements to 2 or 3). The automatic store opening can't go in like that, it should be conditional.

Link to comment

Well, I don't often lie, I just bend the truth a bit - here are some more patches that are ready, I am putting them up hastily in case life rudely interrupts again. They are hooked into the guienhancements setting now so set GuiEnhancements=31 in the ini. Please let me know if there are any problems with the patches, as the diff tool makes my head spin.

 

http://pastefile.com...oads/arrow.diff -- enable arrow selection from action bar

http://pastefile.com...storetweak.diff -- bags go straight to contents and storekeeps dont reset when you change player

http://pastefile.com...uickloader.diff -- load games from the bg2 splash screen

 

http://pastefile.com...essageWindow.py + http://pastefile.com...ionbuttons.diff please hold

http://pastefile.com.../actionbar.diff <- fixed diff, hopefully should work

 

This is the most useful one, although I am far from finished, its a start of a more generalised and flexible action bar, which I am inspired to do because I dont like rpg games with ridiculous amounts of menu paging. Eventually I want to do everything from the game screen but for now this enables you to select from a spell menu that scales to fit and starts paging after it hits an internally specified number of rows. The MessageWindow.py here is an experimental merging that should be compatible with bg1, iwd1 and bg2. Feedback is always welcome :)

 

image obligatoire: http://pastefile.com/uploads/chocka.png

Link to comment

Thanks, you're container, shop and quiver changes are now in. The quickloader will take more time to review and the rest I rather not look at before it stops changing. Blindly merging all the message windows like that definitely raises an alarm though.

Link to comment

One really nice enhancement you could code is the most tedious part of the game: the after battle looting. A way to designate/recognize containers for categories: 'magic weapons', 'quiver', gems etc; and a take all button that tries to pick up stuff (that qualifies for the bags) on the ground (move it, pickup to a appropriate bag, output on the console the name of the picked loot); and on open containers, skip the 'move to it'.

 

Most problematic is the user interface for the bag association i guess, though the code to move to stuff and distinguish it is also currently impossible in IE.

Link to comment

the quickloader was just something I did because I have to restart the game so often for testing- it has more of a use in that case, but I thought it was a nifty idea.

 

The message window merge is experimental, I wouldn't expect you to include it in the head, but I just put it up for testing and sharing reasons. But I looked at it very carefully using meld , and if there are any problems with it it is more likely to be from my typos :) . What I would like to do is unify as much as possible, so that any improvments propogate easily into all of the games, but that is an ongoing thing I am doing... eg I am trying to make the records window a bit more flexible/intuitive at the moment

 

 

.. the after battle looting. A way to designate/recognize containers for categories: 'magic weapons', 'quiver', gems etc; and a take all button that tries to pick up stuff (that qualifies for the bags) on the ground (move it, pickup to a appropriate bag, output on the console the name of the picked loot); and on open containers, skip the 'move to it'.

 

That is actually top of my list of things I am working on - You're right in that its a bit tricky, but it should be doable, all the different types are there in the itm files. Mostly my difficulties are coping with the way python expects things to be done, that costs me a good few hours or so every time I try something... but the things I don't know are getting fewer than the things I do slowly. When I am finished, I don't want to have to drag, move or fiddle with any damn thing, or I will have failed my own goal :)

Link to comment

merges are usually in done in several steps, so the unification is aparent and easily reviewable (and bisectable). Eg., first I'd make both bg1 and bg2 have the same script, porting elements both ways and then removing one copy (and propagating the other) in a separate trivial patch. Then I'd just repeat the same process with the others, adding GUICommon.GameIs* checks as needed. If something goes wrong, a lot less code needs to be reviewed or reverted.

 

As for the autoloot, what about all the useless crap that gets dropped? Maybe there could be a configurable value limit and anything below it would be sold automatically, similar to what Jagged Alliance 1.13 has.

Link to comment

There is a tweakpatch somewhere that revises the useless item drops, but I was considering what would need to be done to have it display a menu (preferably near the cursor) along the lines of:

 

you found: [230 arrows, ][1 ornate Longsword, ][740 rusty bloodstained goblin axes][4 gems]and[a book titled: How to Cook Humans][(Take All)]

 

Where clicking on each option would take as many ground items as possible [even passing to other party members, so they act like the mules in that other game]. Either buttons or text, wouldn't matter, the important thing is it would be both simple, flexible and informative. There's even a handy graphic in the steal icon.

 

Heh, but I need all those goblin axes! Every gp counts!

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...