In response to Bravo1
Bravo1 wrote:
They're not supposed to do that really. It's just a relatively large icon that I'm using, and garbage collection thinking they should be held onto for 5+ minutes after no longer being referenced.

It doesn't actually look the same either, the color shifts randomly between blues and greens.

The color of the default "bullet"? Such a subtle color effect might not be worth the hassle. Looks fairly constant light blue to me.
In response to PopLava
The projectile itself isn't the issue, it's the charge animation and the little sparks it sheds off while traveling. Those shift in color but the projectile stays pretty much the same.
Alright, this is very slow, and doesn't properly check some lists, and doesn't check multidimensional lists, but FOR THE MOST PART this should grab you all references to something

proc
getRefs(var/datum/D)
. = new/list()
var/count = 0
var/list/searched = new/list()
for(var/datum/D2)
searched += D2
for(var/v in D2.vars)
if("[v]" == "vars")continue
if(D2.vars[v] == D)
count ++
.["[count]: [D2]"] = "[v]"
else if(istype(D2.vars[v],/list))
for(var/v2 in D2.vars[v])
if(v2 == D || D2.vars[v][v2] == D)
count ++
.["[count]: [D2]"] = "[v]"

//Found not-in-world datums, now lets find atoms, or anything else weird.
for(var/datum/D2 in world)
if(D2 in searched)continue
searched += D2
for(var/v in D2.vars)
if("[v]" == "vars")continue
if(D2.vars[v] == D)
count ++
.["[count]: [D2]"] = "[v]"

else if(istype(D2.vars[v],/list))
var/list/L = D2.vars[v]
for(var/v2 in L)
if(v2 == D)
count ++
.["[count]: [D2]"] = "[v]"



Like I said, it's still missing a few things since I'm having issues perfecting the recursion, but it's a start.

Edit: Should definitly mention, this won't catch anything that's caught in a spawn. Spawn() also acts as a reference, and there's no way to find them.

Edit #2: ALSO won't find anything in global lists, since world isn't a datum.
Fixed the colors and the bug with the poles as shown by poplava.


The game runs at around 50mb of ram max now. I think that'll likely increase depending on what's in the game but....

I'm just very relieved.

Apparently, in order to get additive color for the matrix, it needs to be in the format: color=list(null,null,null,null,rgb())


Added some particles o.o
In response to Pixelcomet
rip that poor majestic tree.
In response to Ghost of ET
Ghost of ET wrote:
rip that poor majestic tree.

For those interested, here's the fancy coloured lighting I wrote. It uses bumarse all CPU, and is 70 lines of code, lol.


obj
_light
var
r = 0
g = 0
b = 0

intensity = 4

red
r = 255
g = 100
b = 100
green
r = 100
g = 255
b = 100
blue
r = 100
g = 100
b = 255

Move()
for(var/nx = -intensity to intensity step 1)
for(var/ny = -intensity to intensity step 1)
if(nx == -intensity || nx == intensity)
if(ny == -intensity || ny == intensity)
continue
for(var/obj/_lighting/L in locate(x+nx,y+ny,z))
var/reduction = 1+get_dist(L,src)*40
L.r = min(255,max(0,L.r-(r-reduction)))
L.g = min(255,max(0,L.g-(g-reduction)))
L.b = min(255,max(0,L.b-(b-reduction)))
L.color = rgb(L.r,L.g,L.b)
.=..()
for(var/nx = -intensity to intensity step 1)
for(var/ny = -intensity to intensity step 1)
if(nx == -intensity || nx == intensity)
if(ny == -intensity || ny == intensity)
continue
for(var/obj/_lighting/L in locate(x+nx,y+ny,z))
var/reduction = 2+get_dist(L,src)*40
L.r = min(255,max(0,L.r+(r-reduction)))
L.g = min(255,max(0,L.g+(g-reduction)))
L.b = min(255,max(0,L.b+(b-reduction)))
L.color = rgb(L.r,L.g,L.b)

New()
..()
spawn(world.tick_lag)Move(loc)

_lighting
var
r = 0
g = 0
b = 0
color = rgb(0,0,0)
alpha = 200 // Adjust this to preference
layer = 99 //Adjust as nessecary
mouse_opacity = 0
icon = 'Lighting.dmi'
icon_state = "white" // MUST BE A SOLID WHITE BLOCK IN ORDER TO WORK
blend_mode = BLEND_MULTIPLY

turf
New()
..()
new/obj/_lighting(src)


Woohoo RTS controls.

Tiny Robot Armada here I come!
After a harrowing night, more updates:



Slightly modified the charge bolt to look less squished in the front, and I've increased the charge bolt's power.

Now, when an enemy is overkilled by a certain amount, it will die instantly. This makes the enemies less dangerous upon death, but only if you hit it with a big hit, like a charge shot!
In response to Bravo1
Bravo1 wrote:
After a harrowing night, more updates:



Slightly modified the charge bolt to look less squished in the front, and I've increased the charge bolt's power.

Now, when an enemy is overkilled by a certain amount, it will die instantly. This makes the enemies less dangerous upon death, but only if you hit it with a big hit, like a charge shot!

Are all basic enemies going to die to 1 charged bolt?

Will you add a cool down to charge bolt so people don't just keep using that instead of regular shots?

Can you make it so that enemies have a chance to do their own charged attacks as well?

Will you ever make an on rails level??
In response to Ghost of ET
1. Not all of them, enemies will get stronger the further into the story you are and your blaster will upgrade to compensate, but not enough to trivialize the content ahead of you, it's entire purpose is to make you more powerful against the early content to ease exploration of earlier portions of the game.

2. No. Charging the shot is it's own cooldown, and I don't feel it necessary to further restrict players for choosing a better option. Some enemies will also only be vulnerable to charge shots, so fighting them would be a nightmare if there were an additional cooldown.

3. Not really, that'd be restricted to bosses. Taking massive damage from anything not boss tier would probably feel really cheap.

4. Not sure yet.
\


Lightning reacts to water (mist in this case) and fire to anything volatile.
In response to Pixelcomet
Pixelcomet wrote:


Added some particles o.o

The entire tree shaking seems too drastic. Why not just shake the client's eye?
why not.. both? O:
http://i.imgur.com/muv6J2Z.webm

Webm because it's big.

Animation for the upgrade chambers because you guys thought it looked better for upgrades.... I kind of agree.

Note: The notifications for upgrades and saving also stick around until you click the screen now. I just happened to click this one relatively quickly.
In response to Bl4ck Adam
Bl4ck Adam wrote:
\

Lightning reacts to water (mist in this case) and fire to anything volatile.

This looks pretty badass... Awesome job.
In response to Konlet
Konlet wrote:
Pixelcomet wrote:


Added some particles o.o

The entire tree shaking seems too drastic. Why not just shake the client's eye?

A better solution might be to shake just the leaves of the tree instead. I think it would look the best of all solutions.
In response to Bl4ck Adam
Loving that project.
In response to Pixelcomet
Pixelcomet wrote:


Added some particles o.o

Shadow for tree could be shorter. Thinks its off. Casting like sun on horizon but showing perfect shadow like high noon on a mid-winters day.
Page: 1 2 3 ... 104 105 106 107 108 ... 349 350 351