Random posts

gisbrecht's picture

THE FOURTH DIMENSION

13.PNG

you go to the fourth dimension.
(content warning theres a little gore mention at the beginning)

Author: 
Marie Gevaudan
Made For: 
An event

Twine macro: << cyclinglink >>

This simply produces a link whose text cycles between a number of values whenever you click on it. It otherwise leads nowhere. You can use it as a silly clicky trinket, a cheap alternative to the <<replace>> macro, or (as detailed below) as an input interface element.

Script code

version.extensions.cyclinglinkMacro={major:3,minor:3,revision:0};
macros.cyclinglink={handler:function(a,b,c){var rl="cyclingLink";
function toggleText(w){w.classList.remove("cyclingLinkInit");
w.classList.toggle(rl+"Enabled");w.classList.toggle(rl+"Disabled");
w.style.display=((w.style.display=="none")?"inline":"none")}switch(c[c.length-1]){case"end":var end=true;
c.pop();break;case"out":var out=true;c.pop();break}var v="";if(c.length&&c[0][0]=="$"){v=c[0].slice(1);
c.shift()}var h=state.history[0].variables;if(out&&h[v]===""){return
}var l=Wikifier.createInternalLink(a,null);l.className="internalLink cyclingLink";
l.setAttribute("data-cycle",0);for(var i=0;i<c.length;i++){var on=(i==Math.max(c.indexOf(h[v]),0));
var d=insertElement(null,"span",null,"cyclingLinkInit cyclingLink"+((on)?"En":"Dis")+"abled");
if(on){h[v]=c[i];l.setAttribute("data-cycle",i)}else{d.style.display="none"
}insertText(d,c[i]);if(on&&end&&i==c.length-1){l.parentNode.replaceChild(d,l)
}else{l.appendChild(d)}}l.onclick=function(){var t=this.childNodes;
var u=this.getAttribute("data-cycle")-0;var m=t.length;toggleText(t[u]);
u=(u+1);if(!(out&&u==m)){u%=m;if(v){h[v]=c[u]}}else{h[v]=""}if((end||out)&&u==m-(end?1:0)){if(end){var n=this.removeChild(t[u]);
n.className=rl+"End";n.style.display="inline";this.parentNode.replaceChild(n,this)
}else{this.parentNode.removeChild(this);return}return}toggleText(t[u]);
this.setAttribute("data-cycle",u)}}};

Features

If the first parameter begins with the "$" sigil, then it will interpret it as a variable to be altered by clicking the link. When the player visits the page or clicks the link, the variable will be changed to match the text of the link. If the variable already has a string value when you load the passage, then the link text that matches the variable will be selected, instead of the first one.

If the last parameter is the word "end", then it will terminate the cycling link at the parameter before last. The containing that text will replace the link element altogether. Similarly, if the last parameter is the word "out", then it will disappear altogether after the final link text is clicked.

Usage examples:
* You look around, but only see <<cyclinglink "grass" "a flower" "a cloud" "the road">>. - This is a purely cosmetic, endlessly cycling link.
* You see a bowl containing <<cyclinglink "3 cookies" "2 cookies" "1 cookie" "a few crumbs" end>>. - This link changes to the words "a few crumbs" when you get to the end.
* You see a dial: <<cyclinglink $heat "off" "low" "high" "fearsome">>. - The $heat variable will be changed to "off" when the page loads (unless it was already set to "high" or "fearsome"), and then sets it to "low", "high" and "fearsome" as the player clicks the link.
* You see a fuel gauge: <<cyclinglink $fuel "100%" "50%" "10%" "0%" end>>.
* You see an air meter: <<cyclinglink $air "********" "******" "****" "**" out>>.

Example program 1 (cosmetic).
Example program 2 (mechanical).
Example program 3 (mechanical with CSS)..

New: Advanced CSS effects

I've gone to the trouble of writing a number of advanced CSS effects for use with this macro. You can see them all and obtain the CSS code for them by clicking here. These use some very recent CSS animation features in unusual combinations, but they've been tested in both Chrome and Firefox.

Implementation details:
* For CSS users: the <a> tag has the class names "cyclingLink" and "internalLink".
* Each option is a <span> inside the <a> tag. Clicking it causes the next one down to have the class "cyclingLinkEnabled", and the others to have the class "cyclingLinkDisabled". New: on passage load, each option also has the class "cyclingLinkInit", which is removed as each is clicked.
* When you click, the "data-cycle" attribute of the <a> tag increases by 1 (wrapping around to 0 at the end). You could select this with CSS, I guess, using [data-cycle=1] or somesuch.

Version history:

  1. 9-8-13 - Added 'cyclingLinkInit' class support.
  2. 27-3-13 - Bugfixes, added "out" parameter.
  3. 4-3-13 - Bugfix.
  4. 27-2-13 - Added CSS hooks and the "end" parameter.
  5. 26-2-13 - Added new variable-setting ability.
  6. 16-2-13 - Fixed typo preventing it from working.
  7. 29-1-13 - Initial.

Feel free to report any bugs to @webbedspace.

AttachmentSize
TwineMacro-CyclinglinkTest.html36.68 KB
TwineMacro-CyclinglinkTest2.html57.51 KB
TwineMacro-CyclinglinkTest3.html58.66 KB
TwineMacro-CyclinglinkCSS.html76.57 KB
FlaviusMaximus's picture

Explosive Lemon

explos.PNG
Game File: 

I was trying to make a Bomberman game. sorry for posting stuff before the event timeline, but i thought it would be unfair to upload this as part of the 2-hour game-making mayhem

and if you're using windows 7, don't bother downloading this, it won't work despite of your efforts

Event Created For: 
Made For: 
An event
Kate B's picture

My Castle's Haunted!

mch8.png

You inherited a castle from your late grandma! But something's UP with it....

I'm not happy with some of this game's writing but I had to release it in time for halloween. I explored the idea of being in a space with a bunch of monsters moving between the rooms chasing you. They smell you to find you, and you can sometimes hear a distant door opening and closing when they reach a room next to the one you're in.

There's also lots of cool secrets and stuff to see and touch in the castle. Don't expect too much tho

Event Created For: 
Made For: 
An event
bagenzo's picture

marios pilonidal cyst surgery

Screenshot from 2021-07-16 11-07-19.png

warning: surgery

mario gets pilonidal cyst surgery after falling too many times

this came to me in a vision while i was shaving

Made For: 
An event
qrleon's picture

A Man of Solemn Dignity WIP

AMOSD.png

AMOSD is the shooter I said I would send to DJKlikster once finished. It's been sitting untouched for a while now, and I thought starting a diary would encourage me to finish it. I'm trying to fix errors on the main gameplay board before I copy it ten or fifteen times.

The attached file includes the engine screen. Please note that it's not a real level and you will easily be overpowered because all enemies are set to spawn indefinitely. The real game will NOT be this dense, except for maybe the final gauntlet. See the debug controls below for help in cleaning up this mess. (or you could wait until I upload a less cluttered WIP.)

Controls

WASD: movement
Arrow keys: shoot
1-9: equip weapons
-, =, backspace, ]: more weapons

Debug

CTRL+Z: wipe all enemies
CTRL+X: wipe all spawn points
Click on any enemy or spawn point to remove it.
CTRL+Shift+Click: Move the player
CTRL+L: add 50 life to the player

(using CTRL+Z and clicking unwanted lairs, you can set up a fight between the player and only a couple of enemy types.)

Main Enemies

Ninja Head: the main enemy. Follows and shoots smokescreen, which affects the player's shot accuracy.

Slime: acid splashes back when you hit it.

Eye: Moves in a swirling pattern and slowly closes in on the player. Later on, they will be created 16 at a time, one every 0.2 seconds, to make a snake enemy.

Yellow octopus with eye: a sniper whose shots go through walls. weak on its own since it doesn't follow the player, but they can make being cornered by other enemies much more dangerous (or impossible to escape). They can also be boxed into areas and be used as permanent turrets. I should probably lower their starting life a bit.

Knight: moves only in the cardinal directions (NSEW), and twice as fast if aligned with the player. Knights are knocked back by the sword weapon.

Exotic Enemies

Orb: a slow ball that splits in half occasionally. these don't spawn from lairs; they're just an additional hazard.

Beetle: Small enemies with 1HP that spawn quickly.

Rocket Launchers: not implemented. periodically shoot 8-16 rockets away from the player, which slow down and then reverse course towards him.

Ghosts: not implemented. they will probably just stop&go through walls.

Robots: move along a set path, usually through a narrow maze. they will shoot smokescreen if you destroy them.

Weapons

(eventually i will set it up so that the player has only 3 or 4 weapon slots.)

1 - Normal
2 - Longer range, lower rate of fire
3 - Low range, passes through walls
4 - Sword, deflects projectiles except for smoke. Slimes don't counter it and knights cannot charge through it. several swords layer on top of one another making for a rudimentary charge-up, allowing the player to destroy some enemies instantly on contact.
5 - Boomerangs!
6 - eggs/pellets. for when things are chasing you in narrow corridors and you want a higher rate of fire.
7 - 'flamethrower'. high rate of fire and low range. useless in corridors as it will hit the walls and disappear. if the player runs and shoots in the same direction, this weapon will make a rudimentary shield against weak enemies.
8 - shower nozzle, very weak with a high rate of fire, only useful against 1HP enemies such as beetles. very bad against slimes.
9 - cannonball, high damage and very low rate of fire. it will pass through multiple enemies.
0 - rebounding shot
-, =, and backspace are rare combinations of the above. \ is a broken version of the normal gun, and ] is a debug weapon.

OTHER STUFF

Sliding spikes: hurt when touched. cannot be shot through.

Sokoban boulder: it can be pushed. these would basically just be used to aggravate narrow mazes.

Dynamite: can be pushed, detonates if shot by player or hit by a sliding spike

Purple walls: can be destroyed by dynamite.

...

See the below comments for more updates on the project.

edited for clarity!

AttachmentSize
amosdWIP.zip88.17 KB
everythingstaken's picture

canvassssssss

nypirgSC.png
Game File: 

Use the keyboard and mouse!

Hi, my name is!

now a web version :-)

Event Created For: 
Made For: 
An event
fizzhog's picture

As a child I’d play for hours in Nana’s sewing room (for Clyde)

screenshot.jpg
Game File: 

Clyde said:

-I want fabrics everywhere I look.
-Homemade sound effects (the more the better)
-Please keep identifiable objects to a minimum. I basically want the game to be about fabrics more than the things that are made of fabric.
-No words at all.

Best played fullscreen.

It's made in Unity. The zip file contains 64-bit and 32-bit versions.

Made For: 
An event
Syndicate content