Author Topic: Land of Dran  (Read 8967 times)

you have to call all the people who play your game your little drennies

you have to call all the people who play your game your little drennies
Hey there my little drenny drenny 😈😈

Hey there my little drenny drenny 😈😈
sleeper agent activation code

this page is off to a poor start

can we make it worse

can we make it worse
We most certainly can. Why don't we talk about something topical?




vaseline is both good at moisturizing your skin and lubricating your coconut

Why would you say that


http://dran.land/emitters.webm



update, emitter script that gives me jet emitter:
Code: [Select]
function jet()
d = getClientByName("DrenDran"):getPlayer()
addEmitter("playerJetEmitter"):attachToDynamic(d,"Right_Foot")
addEmitter("playerJetEmitter"):attachToDynamic(d,"Left_Foot")
end

settings = {}
settings.texture = "assets/particles/cloud.png"
settings.color0 = "0.0 0.0 1.0 0.6"
settings.color1 = "1.0 0.46 0.0 0.5"
settings.color2 = "1.0 0.46 0.0 0.4"
settings.color3 = "1.0 0.0 0.0 0.0"
settings.size0 = 1.6
settings.size1 = 1.0
settings.size2 = 1.0
settings.size3 = 2.1
settings.time0 = 0
settings.time1 = 0.2
settings.time2 = 0.3
settings.time3 = 1
settings.drag = "0.2 0.2 0.2"
settings.gravity = "0 -5 0"
settings.inheritedVelFactor = 1
settings.lifetimeMS = 200
settings.lifetimeVarianceMS = 10
settings.spinSpeed = 1
settings.useInvAlpha = true
settings.needsSorting = true
addParticleType("playerJetParticle",settings)

settings = {}
settings.particles = "playerJetParticle"
settings.ejectionOffset = 0
settings.ejectionPeriodMS = 8
settings.ejectionVelocity = 5
settings.periodVarianceMS = 0
settings.phiReferenceVel = 0
settings.phiVariance = 360
settings.thetaMax = 3.1415
settings.thetaMin = 3.1415
settings.velocityVariance = 0
settings.uiName = "Player Jet"
addEmitterType("playerJetEmitter",settings)

Also a list of all functions on the server so far:
Code: [Select]
numVehicles = getNumVehicles()
x,y,z = brickCar:getPosition()
x,y,z = brickCar:getVelocity()
brickCar:setPosition(x,y,z)
brickCar:setVelocity(x,y,z)
client = brickCar:getOwner() - Returns nil if the creator has since left the server
numBricks = brickCar:getNumBricks()
brickCar = getBrickCarIdx(index)
brickCar:remove()

count = getNumBricks()
brick = getBrickIdx(index)
count = getNumNamedBricks(name)
brick = getNamedBrickIdx(name,idx)
brick = getBrickAt(x,y,z)
name = brick:getName()
width,length,height = brick:getDimensions()
r,g,b,a = brick:getColor()
x,y,z = brick:getPosition()
bool = brick:isSpecial() - Does it have it's own model as opposed to being a regular rectangular prism
id = brick:getTypeID() - Returns nil if isSpecial == false
client = brick:getOwner() - Only gets the owner if they're still online
brick:remove() - Removes the brick, using any lua reference to the old brick after deleting it will crash the server for now. Very fun.
brick:setColliding(bool)
brick:setColor(r,g,b,a)
brick:setPosition(x,y,z)
brick:setAngleID(angleID) - From 0 to 3

client = getClientIdx(index)
client = getClientByName(string)
client:setPlayer(dynamic)
client:toggleRotationControl(bool) - snaps the player's (if available) rotation to a rotation around Y axis equal to client's camera yaw
client:bindCamera(dynamic) - Set client's camera to follow a given dynamic object around
client:setCameraPosition(x,y,z) - Unbinds client's camera from dynamic if bound and fixes camera position
client:setCameraDirection(x,y,z) - Unbinds client's camera from dynamic if bound, direction has no effect if freelook == true
client:setCameraFreelook(bool) - Is the camera direction fixed? No effect if camera bound to dynamic
client:sendMessage(text,category) - Category is optional, but will allow the client to filter certain types of messages. CEGUI text formatting tags work here.
client:getNumBricks()
client:getBrickIdx(index)
name = client:getName()
howMany = client:getNumVehicles() - How many vehicles this client currently has on the map
client:spawnPlayer(x,y,z) - Removes old player and creates a new one, binds camera to it, and gives it a hammer and wrench
client = gcbn(string) - alias for getClientByName(string)
client:clearBricks() - Quickly clears all of a clients bricks
client:bottomPrint(text,timeoutMS) - Timeout can be 0 (to clear message) all the way up to 65534 milliseconds. CEGUI formatting tags can change text color and other properties.

echo(string) - Can accept and render CEGUI text formatting tags for display in client developer console.
saveBuildLod(filePath) - Saves all static bricks (i.e. the main build) to a file (do not add a file extension)
playSound(name,x,y,z,looping)
registerEventListener(eventName,functionName) - Will call your function any time a given event occurs allow you to change if and how the event fires
clearAllBricks() - Clears all of the bricks in the server
loadBlocklandSave(filePath) - Loads blockland BLS save at that given relative file path
unregisterEventListener(eventName,functionName) --- Disables a package
messageAll(text,category)
printNetIDs() - Puts how many objects of each type (i.e. vehicles, clients) have been allocated since server start.
clearAllCars() - Removes all built brick cars
bottomPrintAll(message,milliseconds) - calls bottomPrint on all clients
ScheduleID = Schedule(milliseconds,functionName) -- Calls named function if it exists in a certain  amount of time
Cancel(scheduleID) - Cancels a schedule if it exists

dynamic = getDynamicIdx(index) - Find dynamic object at given index
dynamic:setGravity(x,y,z) - Set gravity of a particular object
dynamic:setVelocity(x,y,z)
dynamic = getPlayerByName(string) - returns a dynamic
num = getNumDynamics()
num = getNumClients()
dyanmic = client:getPlayer()
dynamic:setAngularFactor(x,y,z) - Sets if and how much a dynamic can be affected by rotations around a given axis from collisions and such
dynamic:setRotation(w,x,y,z) - A quaternion
dynamic:setPosition(x,y,z)
dynamic:setRestitution(restitution) - Sets how bouncy something is, 0 is not at all, 1 is normal, can go higher
dynamic:setAngularVelocity(x,y,z)
dynamic = addDynamic(typeID)
dynamic:setNodeColor(nodeName,r,g,b)
dynamic:setShapeName(name,red,green,blue) - You can also omit the color arguments if you want
dynamic:remove()
x,y,z = dynamic:getPosition()

addParticleType(datablockName,table) -- The table contains all of the properties for the emitter
addEmitterType(datablockName,table) --
emitter = addEmitter(type,x,y,z) --- x,y,z are optional
emitter:attachToDynamic(dynamic,nodeName) -- nodeName is optional, it's where to attach the emitter
emitter:attachToBrick(brick) -- nil can be passed and emitter will stay at its last position then
emitter:remove()
« Last Edit: April 24, 2023, 09:03:53 PM by DrenDran »

-snip-
you should make a gore emitter that has a lot of particles and objects so that people can have realistic gore and totally not to spam and lag servers

you should make a gore emitter that has a lot of particles and objects so that people can have realis tic gore and totally not to spam and lag servers

Believe it not, particles that don't have partial transparency / don't need sorting have very little performance impact. You can have 100,000s of them on a modern PC and still probably get a decent framerate.

It's emitters like the fog or smoke that have a greater impact.

Also, check this out:
https://cdn.discordapp.com/attachments/1079500374689464320/1100580365149671454/2023-04-25-20-31-06.webm
« Last Edit: May 20, 2023, 06:36:32 AM by DrenDran »