on neocities i have a link as an image but i can’t fucking figure out how to get it to align in the center without formatting every image to align that way.
here’s the code
i’m stuck, i’ve tried style=“align:center” (and the same thing with “center” as “middle”) i’ve tried just align:center (/middle) align=center and style = “align=center”(/middle)
i’m still looking but tbh its been a few years since i’ve coded HTML and it’s pretty fuzzy
sorry if this is a stupid question but i just want to make a fun website and not stress myself out
also if i could align it at the bottom center too that would be amazing
We are attempting to make a point and click style website to get to know us and our interests etc, via neocites- we know a bit of HTML but would like tips and or advice since we have literally no idea where to start- we are going to start working on drawing what we want things to look like but we still dont know where to start! Tips and advice are very very welcome! Thanks!
hello…. does anyone have a working popup box code/tutorial without javascript? all the ones i’m looking at are either like 10 years old, deleted or won’t work</3
bahhh why is the neocities HTML tutorial so harddddddd
I’m stuck on the third page. I keep trying to do the thing yk this thing to make a header
<H1> put words here </H1>
And it keeps saying!!! That’s not a header!!!!! Ok what does a header look likeeeeee!???
And it has these little boxes on the side of the different tag thingies with an italics or a red X saying HTML needs to be the first starter tag. Cool it is. I think? Idfk cuz we haven’t gotten to starter tags yet! So why are you trying to tell me whatever about them?? Or </body> is an unexpected tag so it’s being ignored. Cool. Why is it there then? Am I supposed to fix it? Cuz I haven’t been taught how!!
There are ways! This is a bit of a broad topic since the details can vary depending on the specific ghost and what SHIORI it uses. However, the general concepts should apply regardless, so hopefully this will be helpful for folks!
Note: this advice assumes you’ve turned on developer mode in the SSP preferences. You can do that on the General page if you’ve not done it yet.
This turned into a bit of a longer guide, so the details are under a cut!
[[MORE]]
Dragging and dropping text
This method works under the following conditions:
The dialogue is a single unbroken line (no line breaks).
There is at least one SakuraScript tag within it.
Basically, it works for dialogues that look like this:
\0\s[0]This is a test dialogue.\w8\w8\1\s[10]Neat!
Simply click and drag to highlight that dialogue, and drop it on the ghost that you want to play it!
This method is really handy for quick and easy stuff, and it also works with the SakuraScript examples on Ukadoc’s SakuraScript list! It does have some limitations, for example it doesn’t work when I try to drag and drop text from Tumblr’s post editor. But if you’re doing it from a text editor or plain text on a website like Ukadoc, it should work!
Note: for YAYA specifically, if you’re using an English template, you almost certainly have a snippet of code that will run embedded elements for you! That means you can test dialogue with %(these) and see the expected result, usually.
Other than that, SHIORI-specific syntax will generally not work with this method, including string interpolation ( ${these} in Kawari, {these} in Aosora, etc. ). It may be possible in some cases to get it working, but I am not currently aware of methods to do so outside of YAYA!
Script input
Similar to the above, but more helpful in some circumstances.
This method works under the following conditions:
The dialogue is a single unbroken line (no line breaks).
You can open script input by clicking your ghost and pressing Ctrl + S. Or, you can open the developer palette (in the Utilities section of the right click menu, or by pressing Ctrl + Shift + D), and open script input from there.
Script input looks like this with SSP’s default balloon:
Once you have it open, either type a script into it, or copy and paste a script from elsewhere. Then click OK or press enter, and the script will play!
This method is super handy because you can quickly tweak the dialogue in the script input box and see the changes with just one click.
A couple of notes for YAYA specifically:
As above, string interpolation ( %(these) ) will work here if you have the setup for it.
Script input always inserts a \e tag after the end of dialogue. This can interfere with YAYA’s syntax for starting chains. If you want to start a chain dialogue, you’ll need to use the next method instead.
Running a test event
This method can test absolutely anything because it is simply the same as making a ghost in general. But in this case, we’ll set it up for testing purposes.
The key thing to know here is that for any ghost, in any SHIORI, you can define arbitrary SHIORI events as you see fit. Then, you can call those SHIORI events by any method you like, such as the \![raise] tag.
For example, let’s say we have a YAYA dialogue like this:
“I’m currently feeling ” – “red” “green” “blue”
We can’t test this in script input since it’s spread across multiple lines. However, we can easily put it into a SHIORI event and then call that event. For this to work, the event’s name must start with On (which is what makes it callable as a SHIORI event).
Now all we need to do is save the file and reload the ghost, run the tag \![raise,OnTest] in script input, and we should see the dialogue play.
You can use this to test practically anything. In fact, if you just want to test the dialogue in a specific event (user-made or otherwise), you can call that event directly! This is mainly useful for things other than RandomTalk, stuff that only has a few dialogues. For example, I can use \![raise,OnBoot] to run OnBoot with no references.
If you need to test events and send dummy data to test specific conditions, you can just write a raise tag and put the reference data into it. For example, this tag will run the email checking event with reference0 set to 50, which in this case would make it think there are 50 emails: \![raise,OnBIFFComplete,50]
Testing optimization
I do want to quickly mention some optimizations you can do that make testing easier. For example, you may notice that the 3rd method listed above is basically the same as the “test variable” that some English ghost templates come with. Indeed, that is just an arbitrary function for you to test code and dialogue in! (The “variable” in the name doesn’t strictly have anything to do with variables, it is entirely arbitrary.)
So of course, if you want, you can put your test event into your ghost’s menu so that you don’t need to use the raise tag. It will work just the same. For example, I can call the event OnTest with the menu choice \q[Test,OnTest], and I can do the same email test event as before with \q[Email demo,OnBIFFComplete,50]. The key thing to realize here is that you can call SHIORI events at will, and put whatever you want in them!
Debug mode
Something else that you might want to do is hide these tester menu options from users. There’s a very simple way to do that! In the developer palette there is a check box for Enable SHIORI debug mode. You can set up your ghost to change behavior based on this.
In YAYA, the code for this is already handled for you, and you can simply write a check using SHIORI3FW.DebugMode in any menu (or other function that you want):
if SHIORI3FW.DebugMode { “\q[Test,OnTest]” }
This if check will only be true if that check box is ticked! This makes it easy to set up debugging tools and information without needing to worry about removing it later.
You can use this with other SHIORI as well, but you may need to set up the code yourself. The event you’ll need is enable_debug.
Reloading methods
Another thing worth mentioning is the method you use to reload, since this significantly impacts how quickly you can test dialogue. Quicker reloads mean much faster development!
The quickest way to reload for testing dialogue is to reload just the SHIORI from the dev palette. Just open the dev palette, click Reload…, and then select SHIORI. This reloads everything controlled by the SHIORI, which for our purposes means the dictionary files that you write dialogue and code in. This does not reload the shell, which saves time!
If you click Reload… and then Ghost, it will reload every part of the ghost, but without prompting any dialogue. This is a fast way to reload if you need to reload both shell and dialogue/code.
You can also reload by right clicking the ghost, going to the Utilities submenu, and selecting Reload ghost. This will make the ghost play its close dialogue, then reload, then play its opening dialogue.
This is slow, but you can also set custom dialogue for reloading here if you enjoy that kind of interaction with your ghost. If you don’t set custom reload dialogue, then this is also a really useful way to test your open and close dialogues.
Finally, you can also effectively reload by completely closing SSP and opening it again. This isn’t a method I would recommend using for general-purpose reloading, however, if SSP is behaving very strangely it is probably a good idea to try this. Occasionally developers have had problems that require an SSP restart (or even a full computer restart!) to resolve, so it’s worth keeping in mind.
Hotkeys
Hotkeys can also make testing a lot faster! For example, you can set up a hotkey to reload your ghost, and another hotkey to run your test function. Here’s an example of a setup in YAYA:
OnKeyPress { if SHIORI3FW.DebugMode //Only use these hotkeys if debug mode is enabled { if reference0 == “f5” //Reload when F5 is pressed { “\![reload,shiori]” } elseif reference0 == “v” //Run test event when V is pressed { “\![raise,OnTest]” } } }
There are multiple reload tags listed on Ukadoc, so you can use hotkeys to reload things other than just the SHIORI if you like!
It takes a little bit of effort up front to make a setup like this, but once you have it set up then it pays off by letting you test things much more efficiently.
SHIORI-specific methods
There are a couple of SHIORI-specific methods that it may be worth mentioning as well.
If you use the SHIORI Aosora and the text editor VSCode, you can use Aosora’s VSCode extension to send dialogues straight to the ghost. As far as I am aware this has some limitations and only works with stuff that’s relatively straightforward, but it seems very useful! If you happen to be using Aosora and VSCode, definitely give it a try.
Similarly, the SHIORI Satori has the tools such as Satolist, which I believe can be used to send dialogues to ghosts directly for testing. I’m not exactly sure on the specifics here (I might have the wrong program), and there are very few English ghosts this would be applicable to, but it is mainly to illustrate that these things are possible!
Phew, that was a lot. Hopefully that helps! If you would believe, there is more detail I left out of here… but I hope that what I’ve chosen to present here gives anyone reading some firm starting points for testing dialogue, testing events in general, and beginning to create efficient debugging setups!
i don’t know where I am, but I’ll try my best. Seems like something went very wrong when I went back to sleep. No problem, though- I’m quite versatile.
where the actual hell are we finding jcink resources these days? i need a toggle box with cookies so it remembers its last position. i can’t find shit anywhere.
Hi anon! It’s not a bother at all, I’m glad you asked.
I answered a similar ask here about coding where I compare Twine programs like Chapbook and Sugarcube. If you’re just playing around with it to start, I’d recommend Chapbook to get a feel for Twine and the process of laying out an IF. Sugarcube is fairly complex for beginners; if you want to go that route, I’d recommend using a template.
My biggest tip is to start small, and since you mentioned this is a short story idea, I think you’re already on the right track! I would also add, don’t be afraid for your story to be too linear at first. I know many new IF authors go in with expansive ideas and multiple variables, but it can get overwhelming very quickly.
Viatica is a short, mostly linear story that was originally written in Chapbook. It allowed me to explore and experiment with coding in a way I couldn’t have if I started big. Cantata wouldn’t exist as it does now if I didn’t first start small with Viatica.
I included guides, templates and other resources that were especially helpful to me on my itch page, so I’d start there if you need help. The author of Wayfarer, @idrellegames, also provides great coding help and advice here.
I hope this helped, and good luck on your venture!
Coding this stupid FUCKING Hangman makes me want to gouge my eyes out and offer my skin up to be used as a costume by an eldritch computer virus.
Nothing, literally NOTHING, I do makes the stupid fucking code fill in the spots where all occurrences of a single letter happen. It only ever fills in the first occurence because some IDIOT made .find only find the FIRST FUCKING OCCURRENCE.
It also doesn’t help that I don’t understand ANY OF THE FUCKING ADVICE THAT MY CODING TEACHER GIVES ME AND I CAN’T WORK UP THE COURAGE TO ASK HIM TO DUMB IT DOWN OR ELABORATE BECAUSE I DON’T WANT TO BE A FUCKING NUISANCE, SO I JUST SIT THERE NODDING ALONG LIKE A FUCKING IDIOT WHILE I UNDERSTAND 25% OF WHAT HE SAYS.
This is pure agony. Day after day, I get further behind because I can’t FUCKING FIX THIS.
Artist block, my thoughts are caving in.
Artist block, trapped inside my mind, a man’s old clock counting down to your my demise.
Fascinating development in my search for my old blog theme from almost ten years ago… I thought the blog was deleted because it says “hmm nothing here”… HOWEVER….
I have managed to regain access to my old main blog! It still exists!
I found the theme, I can edit the theme, however, if i visit that blog, even while logged into it, the page still says “hmm there’s nothing here”. Is there some setting I need to change?
can someone explain to me how to un-nest reblogs in an old tumblr theme that has nested reblogs? in a way that is simple to understand and shit. yes i know there is some code out there that can do it but it’s clear that idk what the fuck i’m doing and do not fully understand it. i know there’s modern themes out there that no longer have nested reblogs (including the basic tumblr one made by tumblr themselves) but like. how do you translate whatever is going on in those newer themes to my old theme which i refuse to let go of? how do i figure out in my own theme where the reblog shit is happening, and what would i need to change/alter in the code in order to change how the reblogs actually appear?
I don’t know how to code in any coding languages, which is inconvenient when I have an idea that would require me to understand multiple to write just a little bit of code.
anyway if anyone knows HTML, CSS and JS and wants to help bring a little bit of whimsy into the world please lmk 🙏
this is random but like, does anyone know what (coding? anything else?) skills would be needed to make a website where you can make like a checklist? like a pre-made one, that people can use and like save for themselves (and revisit)?
i have An Idea but no fucking idea how to actually do it and it’s soo out of my wheelhouse but its one of those i know i can learn it i just need to know what i need to learn
Some quick tips, though this is not a full guide by any means.
I’d definitely recommend downloading this sample file from the Choicescript official tutorial: here. This is super useful because you can see what a working game looks like, and you can just amend the choices and the text from there. Also recommend reading the page for all the basics.
Start by going to web > mygame > scenes. The startup.txt file is where you should begin the game. You will also need to look at the choicescript_stats.txt file, which is where you’ll put in stats that players see in the ‘stats’ button.
I think a lot of errors appear when you don’t have a *goto at the end of every *label or *choice.
Another common error is when you don’t have the right indentations (remember to put 2 spaces after every choice option like this):
Other than that, you also get useful error pop ups telling you what’s wrong, and you can always google that error or read through the documentation of ChoiceScript to see what went wrong.
Of course. I will add a new AI Assistant panel that allows you to diagnose and analyze the game state using the Gemini API. This will introduce a powerful new tool for understanding the complex dynamics of the simulation.
Here is a summary of the changes I’ll be making:
New AI Assistant Panel: I am adding a new, draggable UI panel dedicated to the AI Assistant. You can open it via a new button on the bottom control bar.
Natural Language Queries: You can type questions in plain English to ask the AI about the current state of the game.
Pre-defined Analysis: For your convenience, I’ve included several one-click analysis buttons:
Analyze Team Economy: Get a detailed breakdown of a selected team’s economic strengths and weaknesses.
Analyze Military Strategy: Understand why a team might be winning or losing its battles.
Suggest Next Moves: Receive strategic advice on what a team should focus on next.
Check for Anomalies: A powerful diagnostic tool that asks the AI to act as a QA tester, scanning the entire game state for potential bugs, inconsistencies, or strange AI behavior.
Dynamic Data Serialization: To provide the AI with the context it needs, I’ve implemented a system that intelligently serializes the current game state into a concise JSON format. This ensures the AI has all the relevant data—from resources and unit counts to research and superweapon status—to give you an accurate and insightful response.
Seamless Integration: The AI Assistant is integrated directly into the main UI, providing a seamless experience for real-time analysis as the simulation unfolds.
im experimenting with my art style more as of right now just to see how i’d like to draw this summer, my hope is to someday get a webcomic started (it could involve a few different stories i have in mind, but one is primarily what ive decided on) but for that i need to work on a whole bunch of concept art!!!! agh. it’ll take time im willing to give to my passions so any inactivity is likely that or just my lack of being on socials :P
also…… so so random but if anyone sees this and has any tips on coding rpg games (feel free to put in comments) i’d really love to also make a short horror game with other ocs from another story since i firmly believe their story would be captured better from the perspective of a player, not a reader. literally any tips from just basic what softwares i should look into and whatnot
Hello Tumblr!! I am asking for help. I am learning how to code using Godot and I want some WISDOM. anyways, I’m doing the gdquest but if anyone has any suggestions on what to do to learn more than I will be very grateful.
so basically i just sarted to work on a computer program sorta like that one yes man program that prosanafies your computer and half way through getting sarted i realized that i have zero clue how to acually make a program let alone code in any of the things i want to put into the program, if you know how to do stuff like that please help me out :(( i just wanna add a dialog featuer and a start up screen that you would pick the personality traits and a music feture :[ like i said please help, if theres a certan program that would work well or a coding language to sugest (curentially im useing html/css) please tell me because all i got down in the head body stuff :(