dock screen modding challenge

Freeform discussion about anything related to modding Transcendence.
Post Reply
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

I haven't made a modding challenge in a while so here is goes.

Make a dock screen that does the following.

On a station object with an arbitrary list of items (so no cheating assuming what items will be on the station)
Display a list of those items categories.
To be able to select one of those categories.
To expand that category.
When expanded it shows the sub-categories of that category and whatever items that are in that category but not in the sub-categories.
It must have at least one sub-category.
Plus it must also show any higher level categories that where options before.
It must keep the cursor in the expected position. (ie when I expand the launcher sub-category the cursor must be on the launcher sub-category or the first item in that sub-category.)
When an item is selected it must display some information about it that wasn't available before you selected it.
When a new category is selected the old category collapses.
Must be able to exit at will.

There you go. I think the cursor will be a major stumbling block but that is what makes this a challenge.
Crying is not a proper retort!
User avatar
alterecco
Fleet Officer
Fleet Officer
Posts: 1658
Joined: Wed Jan 14, 2009 3:08 am
Location: Previously enslaved by the Iocrym

Ouch...

*Must resist challenge*


......


Seriously though... This is possible to do, with some gotcha's.

Is this challenge supposed to be a competition, meaning no discussion of the solution/problem) or just a friendly game of "how can we do this?"
User avatar
Prophet
Militia Captain
Militia Captain
Posts: 826
Joined: Tue Nov 18, 2008 6:09 pm

I think this is more of a request for you to make it wrapped up in a competition-looking challenge to everyone.
Honestly, there are less than half a dozen people that could even manage a half honest attempt.


Besides, it would make a fantastic addition to your dsf! :D
Coming soon: The Syrtian War adventure mod!
A Turret defense genre mod exploring the worst era in Earth's history.
Can you defend the Earth from the Syrtian invaders?
Stay tuned for updates!
User avatar
alterecco
Fleet Officer
Fleet Officer
Posts: 1658
Joined: Wed Jan 14, 2009 3:08 am
Location: Previously enslaved by the Iocrym

*Shelves life*

ok... give me 20 minutes... :D

(kidding)

It would be nice to have something like this in dsf, but i fear it is not something that can be abstracted to that level. There are things I would rather see in dsf, such as built in filter pane, an abstraction of <Display> and such...

I will give a try at implementing this, but most likely as a replacement item browser for godmod.

The issues I can see:
The only way to control the cursor is in an ItemPicker screen, so the categories have to be made as Items. This will be a little cludgy to work with, but can be done i think

Showing additional information: The above restriction makes it impossible to change the data being viewed in the Picker (left part of screen). However, the right pane description can be updated on every cursor movement. It does restrict the amount and type of data that can be shown though.
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

my first thoughts on this was not use the picker screens at all. You wouldn't have the up and down arrows but that was never part of the challenge.

As for a serious vs friendly I would say friendly as I don't see more than two or three people that could give it a half a try if it was serious.

This would be trivial (well easy if you know dockscreens) without the cursor stipulation.

The real main point was to see if someone would try to make a new item list not using the games inbuilt one as that one you can't control the cursor in that one.
Crying is not a proper retort!
User avatar
digdug
Fleet Admiral
Fleet Admiral
Posts: 2620
Joined: Mon Oct 29, 2007 9:23 pm
Location: Decoding hieroglyphics on Tan-Ru-Dorem

so, a custom and more flexible item picker ?
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

basically, the category thing would separate it out from what is considered and item picker in game.

I really hope that it will be done without the categories being items themselves but its not that big of deal.
Crying is not a proper retort!
User avatar
Aeonic
Militia Commander
Militia Commander
Posts: 469
Joined: Sun Jun 14, 2009 1:05 am
Location: Designing his dream ship.

When you're working on dock screen formatting, try to follow the same capitalization scheme that George uses.

Can you see what's wrong with these options?

* Docking status display
* Cargo bay door
* Enlightened fluffy kittens
* Electrical Lighting Functions
* Free coffee refills

Which one is out of place?
Last edited by Aeonic on Sat Nov 28, 2009 4:01 am, edited 1 time in total.
Last Cause Of Death: Destroyed by Karl Svalbard's last Lucifer missile, right after I blew him up. And the crowd cheers.
Image
george moromisato
Developer
Developer
Posts: 2998
Joined: Thu Jul 24, 2003 9:53 pm
Contact:

Aeonic wrote:Just, for the life of me, follow the capitalization scheme that George uses.
If you're talking about dock screen actions, I use a pretty weird capitalization scheme:

1. If it's a command, use sentence capitalization:

Buy items
Replace armor
Talk to station boss

2. If it's the name of a place, then use title capitalization:

Dock Services
Ringer Lab
Hall of Mirrors

3. If it's something the player says, put it in quotes and punctuate:

"Who is Domina?"
"OK, you have a deal."
"He says you betrayed the Fleet."
User avatar
Aeonic
Militia Commander
Militia Commander
Posts: 469
Joined: Sun Jun 14, 2009 1:05 am
Location: Designing his dream ship.

As long as its consistent, its doesn't matter if its weird. :)
Last Cause Of Death: Destroyed by Karl Svalbard's last Lucifer missile, right after I blew him up. And the crowd cheers.
Image
User avatar
alterecco
Fleet Officer
Fleet Officer
Posts: 1658
Joined: Wed Jan 14, 2009 3:08 am
Location: Previously enslaved by the Iocrym

Betelgeuse wrote:my first thoughts on this was not use the picker screens at all. You wouldn't have the up and down arrows but that was never part of the challenge.

As for a serious vs friendly I would say friendly as I don't see more than two or three people that could give it a half a try if it was serious.

This would be trivial (well easy if you know dockscreens) without the cursor stipulation.

The real main point was to see if someone would try to make a new item list not using the games inbuilt one as that one you can't control the cursor in that one.
Friendly it is then... :)

I had not thought of building an entire new screen for this purpose, the main reason being the information available to us. The only place real data on an item can be shown is in a ItemPicker screen, as we don't have the functions available to get this info. So, not showing the items description for example. I guess we could cone up with some way of showing damage types and hit points, but in no way as detailed as the info in the ItemPicker.

Actually the one of easiest part of this (when using the ItemPicker) is placing the cursor. The <ListOptions> element has an attribute called `initialItem' which takes an arbitrary expression and runs it on each item, the first one that returns True becomes the initial item. It is just a matter of knowing which category is the current one to show, and checking if the item is of that category.

The real problem turned out to be sorting the headers. I went with the ItemPicker method and created a `Category Item' for each category, These items would then be added to the DS depending on the categories present in the station. The problem is that if these items are just created as regular items (miscellaneous) they sort last in the list. If you instead create each item as a type of it's own category (so, the armor category item is itself an armor) then you get the category item shown as if it was an armor. In addition, to have it sort at the top of the armors, it must be the highest level item in the list. All in all, the list comes out looking a bit weird.

So... i finished part of the challenge and will leave it be for now. There is no nesting of categories in my current entry and the categories arent sorted correctly (couldn't be bothered). You can get it here:
http://github.com/alterecco/Transcenden ... llenge.xml

Look forward to seeing any novel solutions
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

looks cool

few points.

your initialItem isn't consistent. (well it is in a bad way) Sometimes it starts on a category and sometimes it is on a item. It is always on the top.

giant switches? why all the giant switches. You could use itmEnumTypes and static data in the category items. This would have made sub-categories easier to as you could have put the sub-category list in static data. I think keeping a list of open sub categories would be best but would need to think of how to arbitrarily open and close up sub categories.
Crying is not a proper retort!
Post Reply