Page 1 of 3

1.2 Alpha 1

Posted: Mon Feb 18, 2013 3:34 am
by george moromisato
This is the first alpha release on the way to 1.2:

http://kronosaur.com/downloads/Trans120_Alpha01.zip

This release contains the following changes:

ALL SYSTEMS ARE CREATED AT GAME-START
This allows you to set up missions and other things that rely on knowledge of future systems. I've added a new function to help you access objects in other systems:

(unvFindObj [nodeID] criteria)

For example, if I want to find all commonwealth stations in St. Kats, I can do something like:

(unvFindObj "SK" "t +commonwealth")

This will return a list of entries. Each entry is itself a list with 3 elements: The objectID, the type (UNID) of the object, and the nodeID where the object is found (in this case, that's just "SK").

You can omit the nodeID and get objects in all nodes:

(unvFindObj "t +commonwealth") -> returns entries for all commonwealth objects in the game.

NOTE: Only the current system is active. That has NOT changed. All other systems are dehydrated (saved to disk) and cannot be accessed other than through unvFindObj. For example, if you try to get an object pointer from an objectID by using objGetObjByID you will still get back Nil for any object outside the system.

Nevertheless, this change is still useful because you can tell what exists in other systems before the player gets there. I think that even with these limitations you will find lots of uses for this.

CURRENT MISSION SCREEN
For the first time since the release of Transcendence, the vanilla Ship Screen has a new item: "Missions". If you select this entry you will see a list of missions that you've accepted.

Right now, the only mission that ever shows up here is the one from Commonwealth Habitats. That's because this new screen needs the new mission architecture, and none of the original missions are using the new architecture yet. Over the next few months I will convert the original missions to the new system (or at least add appropriate compatibility with the mission screen).

MORE STARLIGHT
As you know, when you get close to a star, space gets brighter, to indicate that you are being illuminated by the star. I've made a few changes:

1. The values used for solar armor, etc. are synchronized with this illumination. If there is space illumination, then your solar armor is working. If space is black, then it is getting no energy. [NOTE: The color of the light is irrelevant.]
2. I've added a parameter on stars that controls the distance of illumination. Dim stars (red dwarfs) now have a smaller illumination radius.
3. In general, I've increased the distance of illumination, so solar armor should work at longer ranges.
4. The engine now shows the circle of illumination on the system map.

API VERSION 13
Finally, I've made a series of additions and changes to the core API (new functions, new XML, etc.) These have all been documented on the Wiki:

http://transcendence.kronosaur.com/wiki ... pi_version

I've also added a check in the engine so that a mod can require a certain API version. Obviously, this will only work on the 1.2 stream (not in 1.1 unfortunately).

TOWARDS VERSION 1.2
I expect to have several alpha and beta versions between now and a stable 1.2. I would like a stable 1.2 to happen sometime in June/July 2013. I have two primary goals for 1.2:

1. Usability/accessibility/game-balance fixes to make the game better and more enjoyable for all experience-levels.
2. Engine work required to release and sell a new official expansion to be release concurrently with 1.2.

But of course, there will always be room for feature requests for mods, game-balance, and bug fixes. Keep those coming.

Thanks, everyone! And as always, let me know what you think.

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 3:38 am
by george moromisato
FYI: Here is the new TransData also:

http://www.kronosaur.com/downloads/TransData-2.8.1.zip

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 4:20 am
by Ttech
I wasn't expecting this so quickly! Nice work!


Have there been any additions to Multiverse and that API?

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 8:40 am
by NaroHack
At least now i can receive updates when there realesed thanks guys :D

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 10:16 am
by digdug
Ohh!!
Thank you George !
Dynamic prices mod is now possible :)

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 10:54 am
by Datal
Great surprise for birthday :) Thanks!

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 12:11 pm
by RPC
George wrote:ALL SYSTEMS ARE CREATED AT GAME-START
OMG YES.

Although this happened:
bloody mary.png
bloody mary.png (94.46 KiB) Viewed 17957 times
I'm pretty sure it's Planet Parallax making the game derp up when *every* system is generated at start.
Here is the debug log:

https://dl.dropbox.com/u/23352181/Debug.log
Apparently Trans created systems *twice* and then Planet Parallax kills off the poor thing.

*EDIT: I'm pretty sure the combination of Uncharted and Planet Parallax is killing it, I'll double check though.

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 5:12 pm
by george moromisato
RPC wrote:*EDIT: I'm pretty sure the combination of Uncharted and Planet Parallax is killing it, I'll double check though.
Definitely Planet Parallax.

I don't see any obvious bugs, but it looks like the game is running out of memory, which makes me think that there is an infinite recursion somewhere.

One possibility, which I need to check, is that <OnGlobalSystemCreated> is not getting called with the right system. For instance, perhaps the same system is getting called over an over again, which means Planet Parallax keeps on creating new planets.

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 5:54 pm
by george moromisato
george moromisato wrote:Definitely Planet Parallax.
Looks like the game engine is just running out of memory (because of all of the new types created by Planet Parallax).

A couple of solutions:

1. In the next version I've increased the amount of memory allocated to code; but this is only a temporary fix, since the number of types created by Planet Parallax is proportional to the number of systems in the game. If you have lots of systems, you will eventually run out of memory.

2. There is a debug option which you can use to temporarily turn this off:

<Option name="noFullCreate" value="true"/>

Note, however, that this only works in debug mode.

3. Ultimately, I think the best answer is to build a random parallax into the engine itself. For example, imagine:

(objSetProperty planetObj 'plane (random 110 150))

That would remove the need to create types.

4. You can also create a more limited set of types. Imagine (pseudo) code like this:

In <OnGlobalTypesInit> create 90 different types, one for each plane from 110 to 200. Put the resulting UNIDs into an array and store the array in some type global:

(typSetData &stPlanetParallax; 'randomTypes theArrayOfUNIDs)

In the <OnCreate> that you have for Parallax Planet, just refer to the pre-created array when you create the planet

(setq theArrayOfUNIDs (typGetData &stPlanetParallax; 'randomTypes))
(sysCreateStation (random theArrayOfUNIDs) oldpos)

The advantage of this approach is that you never create more than 90 types, as opposed to today, in which you create a type per planet instance.

Re: 1.2 Alpha 1

Posted: Mon Feb 18, 2013 9:38 pm
by Vachtra
Nice work.
The only thing that I don't care for (probably just me) is the light from the stars showing up on the mini map. The only thing I can think this would be helpful for is if it was showing limits of solar charging. If that's so I would rather see it in a much more faded view. Maybe 30% of current intensity, at least for yellow, it's messing with the map grid.

Re: 1.2 Alpha 1

Posted: Tue Feb 19, 2013 2:06 am
by RPC
Thanks for the reply George! :D
I like solution #3 best.
Ticket here:
http://transcendence.kronosaur.com/trac ... 243#ticket

Re: 1.2 Alpha 1

Posted: Tue Feb 19, 2013 5:44 am
by george moromisato
RPC wrote:Thanks for the reply George! :D
I like solution #3 best.
Ticket here:
http://transcendence.kronosaur.com/trac ... 243#ticket
Excellent! Thank you.

Re: 1.2 Alpha 1

Posted: Wed Feb 20, 2013 3:15 am
by PM
Things I noticed:
* All systems generated at new game means player cannot force the Terra to spawn in Dantalion by warping to Heretic then backtracking to Dantalion. Eliminating favorable spawns caused by warping then backtracking such as this is an improvement.
* All random systems with nebula have purple stars.

Re: 1.2 Alpha 1

Posted: Fri Feb 22, 2013 9:54 pm
by pip
Just one tiny thing.....

If you add parallax into the core game could you please please please make it toggleable?
I tried that mod, and granted it did look pretty but it messed with my eyes something fierce. :(

Re: 1.2 Alpha 1

Posted: Fri Feb 22, 2013 10:25 pm
by Atarlost
Speaking of things that should have toggles, I'm still not happy with the way the full screen field of view interacts with the visual display enhancement ROM.