Space Nerds In Space

Re: Space Nerds In Space

Postby MCMic » 19 Jan 2019, 11:53

Regarding additionnal assets downloaded by
{l Code}: {l Select All Code}
make update-assets
, those are the ones in the https://github.com/smcameron/space-nerd ... ace-assets git repository?

If so I think the best solution for me is to package them as an snis-extra-assets-git package in AUR.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby MCMic » 19 Jan 2019, 13:58

Finally managed to build the ISO using gitlab CI!

So you can now link to https://gitlab.com/MCMic/snislive/-/job ... ?job=build which redirects to the artifacts of the latest sucessful build.

I did not try the ISO made by gitlab yet but I see no reason why it would differ from what I build locally.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 19 Jan 2019, 14:31

MCMic {l Wrote}:Regarding Engineering screen:
  • What does the "Deploy chaff" button does? It’s not explained on the website.
  • What does the COMMS PWR slider does? It’s at 0 in preset 1 and yet the COMMS screen seems to work fine.


So on weapons, if you point the guns at an enemy that is within range (spinning arrow thingy is red, not blue) and press the 'N' key, and have missiles remaining, it fires a homing missile (N is for Nuke) at them. Enemies can also fire homing missiles at you. When that happens, it is pretty tough to survive, and to try to make it somewhat more survivable, Comms will get a flashing red warning in the middle of the screen about "MISSILE LOCK ON DETECTED!" If COMMS shouts out and engineering reacts quickly enough, engineering can DEPLOY CHAFF, which will have a good chance of throwing the incoming missile off target and save the day. So that's what CHAFF does. If the enemy missiles turn out to be too potent and demoralizing you can go to the DEMON screen and type in "SET MISSILE_FIRE_CHANCE = 0" and the enemies will never fire any missiles.

COMMS PWR does not do anything, actually.

That being said, there is an aim-able comms antenna that is normally disabled (that is, no aiming is required by default). If you go to the DEMON screen, there's a lua script, ENABLE_ANTENNA.LUA and DISABLE_ANTENNA.LUA

When antenna is enabled, there is a new arrow on the NAV screen showing which way the antenna is pointed. It can only point in a half sphere at the front half of the ship. If you try to communicate with something that is not close by, say a distant starbase, you have to point the antenna towards it. This means your ship has to be pointing at least kind of towards it and not away from it, as the antenna cannot point towards the rear of the ship. Comms is "attenuated" based on (iirc) the dot product of the vector towards the object you're communicating with and the vector of the antenna aim. To aim the antenna, say at a starbase, first ask SCIENCE for the BEARING and MARK to the target. Say it's bearing 250 mark -79. Then, use the computer with a command like "/computer antenna 250 -79". The computer will point to this bearing, and maintain aim at this point so long as the ship is roughly oriented such that that bearing/mark is within the front hemisphere of the ship. If the ship points mostly away from the target, then the antenna will not be able to maintain aim, and signal quality will suffer or go to zero. If the aim is bad enough, your message will get dropped entirely, or, may be "distorted", meaning some fraction of characters will be replaced with an asterisk. But, overall, I found that it's sort of hard enough to tell what the hell is happening when comms is working perfectly, and making comms degrade does not make the game more fun, and it can be difficult to tell the difference between COMMS not working well because the antenna is not well aimed vs. COMMS not working because of a bug in the program. It seemed more frustrating than fun. So this feature is turned off by default.

That has nothing to do with comms power though... which comms power doesn't do anything because I couldn't really figure out something good for it to do, and realistically, a radio just doesn't need that much power to begin with. If you have a good idea about what comms power ought to do, let me know.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby smcameron » 19 Jan 2019, 14:34

MCMic {l Wrote}:Regarding additionnal assets downloaded by
{l Code}: {l Select All Code}
make update-assets
, those are the ones in the https://github.com/smcameron/space-nerd ... ace-assets git repository?

If so I think the best solution for me is to package them as an snis-extra-assets-git package in AUR.


No, the web server has more assets than are in that github repo. I made the web server because git is not especially good for storing assets and I realized if I continued to use git for that, I would soon use up my allocation of free space on github.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby smcameron » 19 Jan 2019, 14:34

MCMic {l Wrote}:Finally managed to build the ISO using gitlab CI!

So you can now link to https://gitlab.com/MCMic/snislive/-/job ... ?job=build which redirects to the artifacts of the latest sucessful build.

I did not try the ISO made by gitlab yet but I see no reason why it would differ from what I build locally.


Cool!

Does this auto-sync with my repo on github? I guess it probably does.

I have prepared a patch to link to this, but I'm not going to do it until you at least try out the ISO image. I mean, *someone* should try it before we inflict it upon the world.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 19 Jan 2019, 15:34

smcameron {l Wrote}:Does this auto-sync with my repo on github? I guess it probably does.

It is manual built only, to avoid taking too much power and spacedisk of gitlab for no reason.
But when built, it builds the AUR package which pulls latest the commit from github master. The name of the file contains the date it was built on.


smcameron {l Wrote}:I have prepared a patch to link to this, but I'm not going to do it until you at least try out the ISO image. I mean, *someone* should try it before we inflict it upon the world.

Fair enough.
I’ll keep you updated when I tested it.
You may want to link to the project webpage as there are some information/instruction as well as the download link, not sure.

Also if you are editing the website source, it would be good to fix the width of the webpage which is way larger than my browser, and this is extra-annoying from mobile as well. From what I’ve seen the best fix is to put "overflow:auto" as css style for the pre tags. It’s those pre blocks which are larger than anything else.

No, the web server has more assets than are in that github repo. I made the web server because git is not especially good for storing assets and I realized if I continued to use git for that, I would soon use up my allocation of free space on github.

Hum. That is not practical for packaging, the PKGBUILD needs to be exaustive regarding source of data and their checksum (well git repos are an exception regarding checksum).
Could you provide those in a single archive so that it can be added as a source of the package?
And if the github repo with assets is obsolete you could mention that in its readme.

That has nothing to do with comms power though... which comms power doesn't do anything because I couldn't really figure out something good for it to do, and realistically, a radio just doesn't need that much power to begin with. If you have a good idea about what comms power ought to do, let me know.

Intuitively I would have expected a range setting like the one for the radar, which requires more power to talk to far starbases.
But maybe it makes no sense and radioing far does not take more power, just more time?

In the end the solution may just be to remove the comms pwr bar from engineering.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby MCMic » 19 Jan 2019, 15:38

Note: I can add you to the project in gitlab and give you enough rights to trigger builds if you want.
You can log into gitlab.com using your github account and it will create you an account automatically.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 19 Jan 2019, 20:13

MCMic {l Wrote}:...
Also if you are editing the website source, it would be good to fix the width of the webpage which is way larger than my browser, and this is extra-annoying from mobile as well. From what I’ve seen the best fix is to put "overflow:auto" as css style for the pre tags. It’s those pre blocks which are larger than anything else.


My web-site editing skills are pretty rudimentary (which i how I like them). I'll poke at it some, but don't expect much.


No, the web server has more assets than are in that github repo. I made the web server because git is not especially good for storing assets and I realized if I continued to use git for that, I would soon use up my allocation of free space on github.

Hum. That is not practical for packaging, the PKGBUILD needs to be exaustive regarding source of data and their checksum (well git repos are an exception regarding checksum).
Could you provide those in a single archive so that it can be added as a source of the package?
And if the github repo with assets is obsolete you could mention that in its readme.

Hmm, a single archive defeats the purpose, which is to not download things more than necessary. Checksum (md5sum) and locations of assets are here: https://spacenerdsinspace.com/snis-assets/manifest.txt

Prepend https://spacenerdsinspace.com/snis-assets/ before all the paths listed in that file.

Or, don't include the assets in the package, and include util/snis_update_assets.sh in the package,
then run that script to fetch the assets separately. The whole point is the assets change from time to time, and you shouldn't have to re-install just to get new assets, and you shouldn't have to download the assets you already have.

Or, you could make your own archive, by running snis_update_assets.sh and packing up whatever it grabs.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 19 Jan 2019, 20:37

smcameron {l Wrote}:Or, don't include the assets in the package, and include util/snis_update_assets.sh in the package,
then run that script to fetch the assets separately.

The build step of the package is supposed to run offline, as far as I know. I’ll see what exactly is missing and if I can think of an easy solution.

I tested the ISO from gitlab.com and it works as fine as the one built locally.
I failed to boot it from an UEFI computer but that may be my inexperience with UEFI, I’m gonna try some more.
I also noticed I have no sound once booted from the USB stick. I may need to include pulse audio, I’m gonna look into that.

[EDIT]Hum, in the end the solution on the UEFI computer was just to wait, it seems the black screen I get is the boot menu, and waiting for long enough it just starts the first menu option and boots the system. And it had sound, so there is sound in the system after all. I think I will still add pulseaudio and pavucontrol to the iso to be able to set up sound on any setup.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 21 Jan 2019, 21:48

MCMic, I sent you an email with a link to an archive of all the SNIS assets. In case you didn't see it it's here: https://spacenerdsinspace.com/snis-asset-archives/
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 24 Jan 2019, 13:56

What is the difference between "disembark" and "eject" passengers? I think I did the wrong one and did not get paid.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 24 Jan 2019, 16:51

Heh. I had to look at the code to find out. This is not a very frequently exercised feature, I would say.

I think the difference is that "ejecting" a passenger means delivering them to someplace they weren't intending to go, while "disembarking" them means delivering them where they intended to go. If you disembark passengers, only those intending to go to the starbase you're currently docked at will leave the ship.

If you eject passengers, the ones being ejected at the wrong starbase will deduct money from your wallet in the amount of the fare. You will still get paid for passegers "ejected" at their correct destination. So for passengers ejected at the wrong desitnation, not only you didn't get paid, you got fined. This should probably be made more obvious somehow.

Here's the relevant "disembark" code. sb->id is the starbase you're currently docked at.

{l Code}: {l Select All Code}
        for (i = 0; i < npassengers; i++) {
                if (passenger[i].location == b->shipid && passenger[i].destination == sb->id) {
                        send_comms_packet(sb, npcname, ch, "  PASSENGER %s DISEMBARKED\n",
                                        passenger[i].name);
                        ship->tsd.ship.wallet += passenger[i].fare;
                        /* passenger disembarks, ceases to be a passenger, replace with new one */
                        update_passenger(i, nstarbases);
                }
        }


And here's the relevant "eject" code:

{l Code}: {l Select All Code}
        for (i = 0; i < npassengers; i++) {
                if (passenger[i].location == b->shipid && passenger[i].destination == sb->id) {
                        send_comms_packet(sb, npcname, ch, "  PASSENGER %s DISEMBARKED\n",
                                        passenger[i].name);
                        ship->tsd.ship.wallet += passenger[i].fare;
                        /* passenger disembarks, ceases to be a passenger, replace with new one */
                        update_passenger(i, nstarbases);
                        continue;
                }
                if (passenger[i].location == b->shipid) {
                        send_comms_packet(sb, npcname, ch, "  PASSENGER %s EJECTED\n",
                                        passenger[i].name);
                        /* Player is fined for ejecting passengers */
                        ship->tsd.ship.wallet -= passenger[i].fare;
                        /* passenger ejected, ceases to be a passenger, replace with new one */
                        update_passenger(i, nstarbases);
                }
        }


The "update_passenger" code looks like this:

{l Code}: {l Select All Code}
static void update_passenger(int i, int nstarbases)
{
        static struct mtwist_state *mt = NULL;
        if (!mt)
                mt = mtwist_init(mtwist_seed);
        character_name(mt, passenger[i].name,  sizeof(passenger[i].name) - 1);
        passenger[i].location = nth_starbase(snis_randn(nstarbases));
        do {
                passenger[i].destination = nth_starbase(snis_randn(nstarbases));
        } while (passenger[i].destination == passenger[i].location && nstarbases > 1);
        passenger[i].fare = compute_fare(passenger[i].location, passenger[i].destination);
}


Basically, the passengers get re-used, and placed on random starbases intent on travelling to other different random starbases.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 24 Jan 2019, 23:53

Thanks for the explanation.

I feel like fares earned and fines paid should produce some output indeed (since the station did tell me it charged me for refuel for instance, when I got no output after ejecting passengers I thought I did not get paid. Of course this is also because I was testing the game alone and have no crew to monitor the money account and such).

I hit a problem with my gitlab built ISO, with all the assets the ISO is now more than 1Gio and gitlab.com refuses to host it so it gets trashed…
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby MCMic » 28 Jan 2019, 12:38

I finally was able to play the game with a whole crew this week-end.

We tried and failed space pox, then went back to saving planet erph which we won, then tried space pox a few other times and lost.

(spoilers about SNIS missions)
First time we missed the box, mined the derelict of the lunear, found nothing, went through the wormwhole, did not understand what to do after.
Then a few times we sent the mining bot on the box and died quickly after.
Then we used the tractor beam to take the box through the wormwhole with us and it worked. We had the vaccine.
We were not sure where to go, so we tried to hail the starbase to get repairs and fuel, and information.
There was a weird bug here, the starbase appeared as SB-00 but if we hailed SB-00 it would answer that we are way too far to dock, while we were just next to it. Clearly I think the SB-00 we were hailing and the one next to us was not the same one.
So after trying a few things we finally decided to go back through the wormwhole but we got short on fuel at that time. In a desperate move we hailed a starbase (sb-00 I guess) and asked to be tracked. It worked, and we managed to dock, and to see that this starbase was actually next to the Bonx planet we’ve been searching, but at that point the last member of the icarus died. We tried to search a bit for icarus around Bonx and did not see it. (But do not tell me where it is we will try again sometime)

Despite the station hailing bug, the main problem we had was how to know where an object which is not in range of scanners is. For instance the Bonx planet, or the Icarus station, how do we know it’s our side of the wormwhole, and how do we know where it is. We tried hailing Bonx or Icarus with no success.
Actually it was the same for planet erph, we found it because we could actually see it from the window, but it was kind of random «Hey here’s a planet let’s try to see if it’s this one».
So either we missed a way of doing that, or the game would need something like this, maybe being able to ask starbases for close planets and other starbases names/positions?


We had a problem with TTS, I activated it only on the server/main screen which was plugged into the sound system, but some things were silent, like mining bot deployment, or computer answers. This means we were basically unable to use the computer since it did not answer. (but things like "docking system engaged" was correctly spoken)
So what did I do wrong, should TTS be checked on all stations?

Speaking of the computer, it feels a bit like cheating since we can ask it do drive for us, mostly. So I was thinking maybe this is what should be controlled by the power slider for COMMS screen. A low power computer would only be able to give manifest and hail stuff, while a fully powered can set courses.

We also missed a way to add currently selected object as a waypoint in the Science screen. And in some cases the SCI arrow was not there in the Navigation screen, not sure why (even with a selected object, which is why we tried to add a waypoint for it I think. But maybe this was the buggy sb-00 again and it’s the same bug).

All in all the game is quite fun, I think the least interesting job is engineering screen, since he goes from doing nothing because there’s nothing to do to doing nothing because there’s not much he can do giving the "all failure" situation. (at least at our level of playing).
A really good improvement would be to allow the engineer to add presets of his own. This would allow him to prepare presets for fighting, warping, that kind of stuff and ajust them as we go. We did not use the chaff and maybe we should have, not sure.
The COMMS screen was busy enough so I do not see the need for this RTS feature (we did not try it). From what I’ve seen in your video about it this feels a bit like if the comm guy was playing something else on his phone while on the bridge. The idea of guiding a fleet of NPC ships around us would be something else though ^^. Are ally ships something we can do in scenarios?

An other question, is there any way to go back to initial solarsystem state once a mission is started? After winning saving planet erph, we docked at the starbase, which told us to go away because it was zarkon, so we went away but there was nothing in the solar system anymore because of the mission beginning clear. As I did not know how to do that we just played missions from this point on.
The mainmenu is quite handy and there should be a way of launching it without going demonscreen. (maybe a key binding on mainscreen?)

I will send a patch with a joystick configuration for a second joystick we used for weapons. We never had the case where we used the wavelength feature, is it useful sometimes? It always felt like fights were too short to be able to look into that. Except the zarkon but we had most of them with missiles.
Is there any way to buy torpedos and missiles?
Torpedos are really hard to use.
Is it possible to take down a starbase?

When COMMS screen puts the science screen on the main screen we do not see the details of the selected object nor the 3D view of it. Is that known/expected?
Also not sure if this is possible but it would come in handy if the cursor of the displayed screen was shown, allowing the scienctific to point at things while explaining stuff for instance (But I get that this might be impossible by design).
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby MCMic » 28 Jan 2019, 14:49

I guess the starbase problem comes from a typo in the lua code, there is starbase_numberJ instead of starbase_number in SPACEPOX.lua

But still, the game should not let a mission script add 2 starbase with the same number if it cannot handle it after.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 28 Jan 2019, 21:42

It's probably harder to know what you're supposed to do in the SPACEPOX mission than it should be. You are supposed to, if I remember correctly (spoilers follow) ...
* find the derelict in the nebula
* find the cargo container containing the vaccine
* When you get the cargo container, a bunch of zarkons will appear, and your warp drive will be damaged.
* The worm hole is there to help you escape from the zarkons.
* once you repair your warp drive, you can go back to bonx station and deliver the vaccines
* You can use the long range scanner (LRS) on science and should be able to find planets and starbases e.g. find BONX and ICARUS station.

None of this is terribly obvious, although spelling it out might rob the crew of the fun of figuring it out.

It is not expected that you'd solve the mission on the first try, I suppose.


For Saving Planet Erph, you should be able to see Erph on Science with the Long Range Scanners (LRS).

Thanks for the note about the "starbase_numberJ" typo. Fixed.

The computer can be a bit cheating. Esp. you can type on comms, e.g.: "set a course for planet erph", even if you have no idea where that is, and it will do it... I should fix that so unless you have scanned it recently, it won't help you out with that. I'll have to think about how COMMS damage might affect computer behavior... maybe I can come up with some non-annoying way for it to misbehave. On the other hand, it might be interesting to have a way for NAV to get damaged, and the *only* way to save the ship is to drive it via the computer. Once here, we played a game in which we tried to dock using only the computer, but were not successful (was playing on an old machine using the limited client with most stations disabled.)

Ally ships in scenarios... the NPC ships are kind of dumb, you can make NPC ships from LUA, but the extent that they are "allies" would be down to whatever behavior you could give them in the script. I should work on the NPC behavior to make such a thing more possible (and believable). The author of Empty Epsilon (another bridge sim) once indicated to me that the key to much NPC behavior is lies, and more lies. If you tell the player a ship has some property, they believe it, even if it has no such property. So in that sense a script can easily indicate that an NPC ship is an "ally" via COMMS some way, and I suppose as long as it doesn't shoot at you, you might believe it was a "ally". Do you have any specific ideas about how such "ally" ships should behave? I have resisted allowing players to give random NPC ships commands, because I can't think of a good way to do it. Something like the starbase menus perhaps, but it seems to me to break immersion a bit. Another idea would be to extend the "natural language" system the computer uses to also handle player to NPC comms, to allow you to make requests of NPC ships (e.g. please rendezvous at x, y, z) I don't know, that seems a little too prone to suffering from "guess the magic sentence" syndrome.

is there any way to go back to initial solarsystem state once a mission is started?

Yes, type "regenerate" on the demon screen (there is a lua script, REGENERATE.LUA that calls regenerate_universe().) I suppose it's not exactly the same solarsystem, but similar enough, I suppose, and if you don't like that one, you can "regenerate" again as many times as you want.

Is there any way to buy torpedos and missiles?

Just dock at a starbase, they will be replenished.

Torpedos are really hard to use.

Yes they are. Perhaps some aiming assist is needed.
The missiles on the other hand are far too easy to use.

Is it possible to take down a starbase?

They are quite resilient, but yes. If you leave snis_server running for a long time, you may notice some starbases disappear. This is because they eventually accumulated enough damage from random NPCs attacking them over time. A single ship is not so likely to succeed at taking down a starbase though.

When COMMS screen puts the science screen on the main screen we do not see the details of the selected object nor the 3D view of it. Is that known/expected?

No, that doesn't sound right. The main screen should mirror whatever the science console has on it. That is, all stations showing science should show approximately the same thing. If any one science screen selects DETAILS, all stations on science should switch to DETAILS. Same for all the sub-screens of SCIENCE. (There may be small differences, like, if you have 3 stations showing science, and you switch to DETAILS, the angle of view of the 3D model may be different on the 3 screens.) But you should not see 3 different science stations with one on the short range scanner, one on the waypoints and one on the details screen. They should all be on the same subscreen of SCIENCE. I just tried this, and it seems to work for me as I have described. So if you can reproduce the behavior you described, it sounds like some sort of buggy behavior.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 28 Jan 2019, 22:48

smcameron {l Wrote}:It's probably harder to know what you're supposed to do in the SPACEPOX mission than it should be. You are supposed to, if I remember correctly (spoilers follow) ...
* find the derelict in the nebula
* find the cargo container containing the vaccine
* When you get the cargo container, a bunch of zarkons will appear, and your warp drive will be damaged.
* The worm hole is there to help you escape from the zarkons.
* once you repair your warp drive, you can go back to bonx station and deliver the vaccines
* You can use the long range scanner (LRS) on science and should be able to find planets and starbases e.g. find BONX and ICARUS station.

None of this is terribly obvious, although spelling it out might rob the crew of the fun of figuring it out.

It is not expected that you'd solve the mission on the first try, I suppose.


This is close to what we did, exept that we did not notice warp drive was damaged.
And we went back through the wormwhole and then used a tractor ship, so not sure if that was the shortest route.

There is way enough information for finding the vaccine (we did on second try I think, but we died from Zarkons right away).


smcameron {l Wrote}:For Saving Planet Erph, you should be able to see Erph on Science with the Long Range Scanners (LRS).


Ok so I think our misuse of the LRS was our main problem. I thought it was just the same thing as SRS but in 3D, mostly.
On SRS/LRS, what is the use of narrowing the radar?
And is there any trick to select things when there are too many overlapping?

smcameron {l Wrote}:The computer can be a bit cheating. Esp. you can type on comms, e.g.: "set a course for planet erph", even if you have no idea where that is, and it will do it... I should fix that so unless you have scanned it recently, it won't help you out with that.

That would make sense. «No known position for object X»
It could just set course to the last known position. (last scanned one, which for planets is most likely the right one)

smcameron {l Wrote}: I'll have to think about how COMMS damage might affect computer behavior... maybe I can come up with some non-annoying way for it to misbehave. On the other hand, it might be interesting to have a way for NAV to get damaged, and the *only* way to save the ship is to drive it via the computer. Once here, we played a game in which we tried to dock using only the computer, but were not successful (was playing on an old machine using the limited client with most stations disabled.)

What do you think about my idea of having to power COMMS to use computer? That gives a use to the useless COMMS PWR slider and is a nerf for the computer since it means you cannot use it on top of everything else.
The commands would need to be sorted between those requiring power (setting a course), not a lot of power (guiding mining bot?), or always available (hailing stations. Except if COMMS systems are completely damaged I guess).


smcameron {l Wrote}:Ally ships in scenarios... the NPC ships are kind of dumb, you can make NPC ships from LUA, but the extent that they are "allies" would be down to whatever behavior you could give them in the script. I should work on the NPC behavior to make such a thing more possible (and believable). The author of Empty Epsilon (another bridge sim) once indicated to me that the key to much NPC behavior is lies, and more lies. If you tell the player a ship has some property, they believe it, even if it has no such property. So in that sense a script can easily indicate that an NPC ship is an "ally" via COMMS some way, and I suppose as long as it doesn't shoot at you, you might believe it was a "ally". Do you have any specific ideas about how such "ally" ships should behave?

I would go with something along the line of «the enemy of my enemy is my ally».
Basically a ship which does not shoot me (unless I shoot at him?) and shoots at ships shooting at me is an ally.
Even more if this ship is somehow following me. (This would make sense in a scenario where someone provides me extra security for a mission. Or the other way around, I’m the security)

I have resisted allowing players to give random NPC ships commands, because I can't think of a good way to do it. Something like the starbase menus perhaps, but it seems to me to break immersion a bit. Another idea would be to extend the "natural language" system the computer uses to also handle player to NPC comms, to allow you to make requests of NPC ships (e.g. please rendezvous at x, y, z) I don't know, that seems a little too prone to suffering from "guess the magic sentence" syndrome.

No good idea from me here, except scripted incomming transmissions from the scenarios and ships following you or expecting you to follow them. (or to rendez-vous indeed).
I guess hailing such an ally ship I would expect the same kind of fake repetitive dialog you find when talking to NPC in MMOs.

is there any way to go back to initial solarsystem state once a mission is started?

Yes, type "regenerate" on the demon screen (there is a lua script, REGENERATE.LUA that calls regenerate_universe().) I suppose it's not exactly the same solarsystem, but similar enough, I suppose, and if you don't like that one, you can "regenerate" again as many times as you want.

Hum, I’m not sure I understand what it does, the result does depend on which solarsystem I started?
It should be added to mainmenu in my opinion. Which should be easily available.

Is there any way to buy torpedos and missiles?

Just dock at a starbase, they will be replenished.

Oh, ok, did not know that. Does it cost money?
Regarding money, when we got the tractor ship ride, we ended up at -2000 money or something. Is money infinite in the current implementation or is it dangerous to stay negative? (I saw those police ships around…)


Torpedos are really hard to use.

Yes they are. Perhaps some aiming assist is needed.
The missiles on the other hand are far too easy to use.

Yes.
Some ideas:
  • To launch a missile you need to keep the button pressed for a short time without the ship leaving your screen. (time required to lock the target)
  • Be able to blow torpedos with the phaser to do spatial damage. (would be kind of dangerous, means if I shoot torpedo and then phaser right away it blows in my face)
  • Torpedos bend lightly toward what I’m aiming at, so I can adjust course slightly

Is it possible to take down a starbase?

They are quite resilient, but yes. If you leave snis_server running for a long time, you may notice some starbases disappear. This is because they eventually accumulated enough damage from random NPCs attacking them over time. A single ship is not so likely to succeed at taking down a starbase though.

Yeah we tried and got nuked.

When COMMS screen puts the science screen on the main screen we do not see the details of the selected object nor the 3D view of it. Is that known/expected?

No, that doesn't sound right. The main screen should mirror whatever the science console has on it. That is, all stations showing science should show approximately the same thing. If any one science screen selects DETAILS, all stations on science should switch to DETAILS. Same for all the sub-screens of SCIENCE. (There may be small differences, like, if you have 3 stations showing science, and you switch to DETAILS, the angle of view of the 3D model may be different on the 3 screens.) But you should not see 3 different science stations with one on the short range scanner, one on the waypoints and one on the details screen. They should all be on the same subscreen of SCIENCE. I just tried this, and it seems to work for me as I have described. So if you can reproduce the behavior you described, it sounds like some sort of buggy behavior.

I got a bug then. What I saw on the main screen was the detail view but as an empty shell, without any information in it. (all labels but no value and no 3D model)

You did not answer regarding TTS?
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby MCMic » 28 Jan 2019, 23:14

Ok the bug in space pox seems fixed.
And I do see a lot of stuff with LRS, easy to find Bonx planet from the start of the mission. Description is funny :-)

It’s really hard to select objects in LRS though. I managed to select Bonx but never the starbase next to it, while I saw its label.
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 28 Jan 2019, 23:20

TTS... I need to look into it a bit.

I think we usually play with all stations running as TTS servers.

I think when you use for example COMMS to ask the computer something, the response goes back to that same client that made the request. But for spontaneous computer speech it generally uses all the client(s) with ROLE_TTS, and sometimes ROLE_ALL. It could probably be a bit more consistent.

If you "grep queue_add_text_to_speech snis_server.c" you can see all the places it's called. When the first parameter is "c", generally that is the computer queuing speech back to the client that made some request.

There's also a volume control for the text to speech. You can either request the computer to "turn up the volume" or "turn down the volume".

I think by default it's 33%
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 29 Jan 2019, 20:35

Ok then next time we’ll check TTS on all stations I guess.

[EDIT]
@smcameron: It seems to me that create_asteroid_field is using derelictx instead of its x parameter, and same thing for y/z. (Fixing this may change the mission behavior)
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 31 Jan 2019, 03:06

@smcameron: It seems to me that create_asteroid_field is using derelictx instead of its x parameter, and same thing for y/z. (Fixing this may change the mission behavior)


Thanks for pointing that out. fixed.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 06 Feb 2019, 12:42

http://www.esa.int/spaceinimages/Images ... Antarctica
This popped up in my RSS today, I thought he was playing SNIS for a minute…
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 10 Feb 2019, 06:17

Today I have been experimenting with procedurally generated "greeble" normal map textures. I don't think I will use this in its current form -- not quite good enough -- but it shows promise:

https://www.youtube.com/watch?v=sLiExdznL7w
Image

The code for generating the normal map texture is here... I'll probably work on it a bit more. It probably won't ever be able to make a directly usable normal map, but will probably be useful if you cut and paste from the generated normal map into a custom normal map. So, maybe it will be a "procedurally assisted" normal map tool rather than a procedurally generated normal map tool.

https://github.com/smcameron/groovygreebler
Last edited by smcameron on 12 Jul 2019, 15:40, edited 1 time in total.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Re: Space Nerds In Space

Postby MCMic » 11 Feb 2019, 16:13

Interesting.

Would be a good base for texturing starbases/mantis, no?
User avatar
MCMic
 
Posts: 711
Joined: 05 Jan 2010, 17:40

Re: Space Nerds In Space

Postby smcameron » 11 Feb 2019, 22:04

MCMic {l Wrote}:Interesting.

Would be a good base for texturing starbases/mantis, no?


Maybe. It's just a normal map and a heightmap, there's not really any corresponding diffuse map or emission map, though coming up with a diffuse map is probably not hard (even plain white would be fine, really). The hard part is doing the uv-unwrapping. Without the uv-unwrap, there's not a whole lot of sense worrying about the various texture maps. From what I recall of the unwrapping of the few starbases, the Wombat, the Disruptor, and a few others, which began as openscad models, the meshes that openscad produces are not great, and can have many weird little things that are fine if you're 3D printing, but not so fine if you're trying to uv-unwrap. Not that it's impossible to unwrap an openscad mesh, but typically as part of that, the mesh ends up getting cleaned up a bit in blender, and the process is somewhat painful. Note, I didn't do the unwrapping, a couple other people did those, and I'm just relaying what I recall of their complaints. Which brings up another thing to consider. As soon as you uv-unwrap a model, it kind of freezes it a little bit, because now you have all these other art assets -- diffuse map, normal map, emission map -- that will break if you touch the model (they will need updating, or potentially complete re-doing). A lot of these openscad models I have are just kind of thrown together without a whole lot of thought -- they are kind of quick and dirty little things, which is kind of the reason I used openscad in the first place, precisely because it's great for quick and dirty little things. Before attempting to uv-unwrap such models, it would be wise to spend time making sure the model is decent enough to bother unwrapping.
smcameron
 
Posts: 293
Joined: 29 Oct 2010, 23:44

Who is online

Users browsing this forum: No registered users and 1 guest