#LineTapper

1 messages ยท Page 3 of 1

verbal bramble
#

when it was just autoplay only

#

and i still had the commit since that until you guys started working on it more and i wanted to check out how it actually plays

ancient spruce
#

yyyeah

verbal bramble
#

and as you see i dont like the concept because its hard to follow in practice

#

for me its like if adofai had 1 key per orb

#

that would be painful to play

thin scroll
#

can someone chart a spongebob episode

novel gust
#

im cooked

#

there are 4 issues

#

each one with no error message

#

game just crashes with no message

#

and idk what to do

#

bc idk where the errors are from, nor do i know where the bugs came from

agile magnet
#

compile with the debug flag

novel gust
#

no i have been

agile magnet
#

it tells you exactly where the game stopped working

novel gust
#

the whole time ive been working with this game

#

i compile with -debug

#

no error

#

no message

agile magnet
#

what's the terminal output

novel gust
#

no callstack

#

nothing.

#

thats why im strressed

agile magnet
#

you can't just not get a callstack

novel gust
#

yeah well it happened.

agile magnet
#

do you use cpp or hl

novel gust
#

cpp

agile magnet
#

huh

#

try using the vsc debugger

novel gust
#

ok

coral knot
#

if it's a C++ error or something

#

i don't know the specifics

novel gust
#

tf

#

nvm

#

its working now

#

shiii

#

guys the debugger just did nothing

#

the game crashed and the socket crashed along with it so likee

#

still no hints

#

WAIT

#

I HAVE IT

#

OML

#

wait

#

my playstate got rolled back

#

tf

#

i was on the wrong branch

#

i had to remerge

#

well

#

now i can actually test if this works

#

bruh

#

ok

#

good news but bad news

#

squares dont draw

#

but everything else is fine

verbal bramble
#

yeah 4 receptors

#

here its kinda 1

#

blehh

#

it has 2 keys cuz you need speed on streams

#

now imagine tight tiles with different directions and you have to read all of them in one moment

#

good luck hitting them

#

thats just bad gameplay design grr

#

only morons play osu mania seriously duh

#

anyways i realized long time ago that you guys wont move from your idea so i abandoned it

#

even left the thread but got pinged so it returned me back

#

play adofai with a unique key attached to each orb.

#

LT is like adofai but more straightforward

#

and in LT i thought its the timing game, not the undyne battle simulator

#

it will become a problem quickly

#

theres lagtrain map

#

i already have some experience but its still off

#

the concept of tight timing doesnt play well with the concept of tap directions

agile magnet
#

i have to say that i side with ral here, i also thought that linetapper was a single key game

#

it feels weird to think of it as not that

verbal bramble
#

really, i was excited to play the game, imagined how well it works on mobile, and then it all just got crushed cuz of directionality

#

again, for me adding arrows just helps with reading the gameplay, and adding forced input to those arrows discards that for me cuz now im trying my best to not mistap my keys

#

i tried playing split keybinds but it went even worse so im restrained to using one hand only and it cuts the speed

novel gust
#

@ancient spruce

#

draw call doesnt work

#

there is literally no other issue but the square effect not drawing

#

thats it

#

im gonna make it so you import a group

#

then it adds the effect to the group

#

bc drawing it manually doesnt work

#

just like all of the other times ive used the draw call

#

it will garenteed never work

#

and is a waste of time

#

(for me it is)

verbal bramble
#

make the approach sprite a just usual png

#

anyways you have unreasonably large assets so why not

novel gust
#

there is code to generate it at runtime

#

thats not the issue

#

its not the graphic

#

i can add it to a state and it draws fine

#

its just when i use its draw call nothing draws

ancient spruce
ancient spruce
tawdry meadow
#

corecat you should totally look at #1202383067373637642 rq

ancient spruce
#

What thing should i specifically look at?

tawdry meadow
#

my post
-# ๐Ÿ‘ฟ

#

(it would be funni

novel gust
#

to sum it up, dont remove directional controls

novel gust
#

so its just ArrowTile.hx and SquareArrowTileEffect.hx

#

so im using ArrowTile.hx

ancient spruce
#

Lemme see your arrowtile code

novel gust
#

ima be in vc if anyone wants to join

ancient spruce
#

I'm going to rework the player code

ancient spruce
#

huuughh

ancient spruce
#

oh my god I've finally finished it ahhh blobimfine

#

really got stuck at the movement code

#

new commit:

  • changed controls from wasd/arrow keys to any keys
  • player movement code rework
  • player.hx documentation, i think
  • reduced draw quads count made by particles in the main menu
  • fixed profile not showing anything
  • menudebugstate shift key fix
  • a lot more i think i forgot
stray hill
#

changed controls from wasd/arrow keys to any keys
rip

ancient spruce
#

๐Ÿ˜”

novel gust
#

don't mind if i do

#

ima merge this rq

#

but im trying to make videos work on hl

#

i originally tried ffmpeg

#

but all libraries were either cpp, or didn't have a way to do things like modify time, volume, or any of that

#

im actually about to just make a goddamn wrapper

#

wait no

#

i cant do that

novel gust
#

FCKHJDSKLJF

#

WIIWIIWIW

#

I MIGHT BE ABLE TO MAKE A VIDEO LOADING LIBRARY FOR HL OPENFL

#

oml

#

no way

#

ill be the one

#

well i wouldnt say that but

#

ive seen no other hl video loading library

#

and it's so damn simple too

tawdry meadow
clear scaffold
#

This gives me an idea!

novel gust
#

(openfl only)

tawdry meadow
novel gust
tawdry meadow
novel gust
#

nope

#

youll see

tawdry meadow
#

TELL ME AAAAAAAAAA

novel gust
#

lmao

novel gust
#

it was a bit more

#

complicated

tawdry meadow
#

pf

#

did you get it working tho

novel gust
#

uhh

#

its gonna take a hot ass minute

thin scroll
novel gust
#

please

#

while your here

#

#openfl-lime message

thin scroll
#

i've never loaded a video in this modern day and age sry

novel gust
#

oh

#

ok

novel gust
#

or do you not know

ancient spruce
#

I never tried loading video in ofl

novel gust
#

fuck

#

everytime i have an issue i make the chat dead until someone else has an issue

verbal bramble
ancient spruce
tawdry meadow
novel gust
#

OML

#

guyssss

#

im 1/2 way of getting videos in hl

novel gust
#

guys

#

bad news

#

i got half the way there

#

but the second half will take an uncertain but really long amount of time

#

so im gonna use cpp

coral knot
#

what are you even doing

novel gust
#

videos for hl

#

well not anymore

coral knot
#

yeah but like how

novel gust
#

I was gonna make an html app that has commands to manage showing videos on the html

#

then show the html on screen

#

but i never researched if there was an html library

#

and i discovered that there wasnt

#

so my other option was to manually decode the mp4

coral knot
#

yeah that's a lot more complicated than just writing bindings for a video lib

#

(in reply to the html thing)

novel gust
#

i dont even know how to load hdlls

#

i havent even used an ndll

coral knot
#

well yeah you'd have to write bindings yourself

novel gust
#

neither do i know how to make one

novel gust
coral knot
#

that gets generated from the externs

novel gust
#

tf

#

i can just use a regular ndll?

coral knot
#

on hashlink? no

novel gust
#

and make bindings for it?

#

tf

coral knot
#

wdym by make bindings for an ndll

#

i dont understand

novel gust
#

i dont think im understanding what your saying

novel gust
coral knot
#

so from my understanding

#

you write "glue code" in c that that takes care of whatever lib you want to port over to haxe and converts all the data into haxe friendly stuff

novel gust
#

i dont know c

#

welp

#

too bad so sad

coral knot
#

that glue code gets exported into a hdll

novel gust
#

cant go for that approach

coral knot
#

it isn't too hard but it's slightly trickier than just C++ bindings

novel gust
#

...

#

welp

#

shit

#

i mean its a way to do it

#

ig this works

#

the best i can get ig

verbal bramble
#

you make a dll using hashlink provided types and rename it to hdll

ancient spruce
verbal bramble
#

evil brother of the LineTapper

#

no visuals cuz I fucked up this version of state manager

novel gust
#

I only have 2 walls ahead that I can see

#
  1. Turning the image data into Bitmap data
  2. Getting audio
#

Getting the frames itself is already done in the example code if the cop library I'm using

#

I can't find audio anywhere

novel gust
#

ofcourse.

#

now I have to move back like 20000 commits and repair everything

thin scroll
#

yum modcharts

ancient spruce
novel gust
#

i merged

novel gust
#

shit is buggy asf

#

trying to tape it up for shipping

#

its contens keep pouring uncontrollably

#

a time traveler, it seems

#

is the only way to fix this

#

hold on gimmie a second I started listening to my mix on youtube shit is ASS fr

#

OML

#

I FIXED IT

#

HOW

novel gust
#

a lot of the code integrity was lost however

#

so you can recover that when merging

#

and if you merge and It's broken, just know it isn't my fault

#

bc I tested this

#

the only bug was with your new movement system not accounting for when you hit a tile early and the player would lag back for a few frames

#

thats the only bug

#

and its a small one

#

oh yeah and that sometimes the pfp wouldnt load when booting up the game

#

thats the only bugs

#

anyway

#

with that said

#

good luck

#

Ill also make a native.hdll soon so If you compile to hl you still get native cpp windows functions

ancient spruce
#

damn bro a lot of the files that i've changed / made will get removed in your pr

ancient spruce
novel gust
#

lol

novel gust
#

man this sucks

tawdry meadow
#

steals the game concept

novel gust
#

merges are just ass bro

novel gust
#

and code integrity gets worse

#

losing the other persons work bc things are breaking

#

and you need to revert to your working version

ancient spruce
#

the offset is ass in lt

ancient spruce
#

nvm i'll just continue fixing this later

novel gust
verbal bramble
#

whats happenin :sob

novel gust
#

ive waited 10 days

#

on you

#

because I was waiting till you did the pr before i kept working

#

but at this rate it's almost half way through october

#

so ima just start working on my fork regardless

novel gust
#

oml
-# My text is so small

#

-# Im addicted

#

also Core do you have a todo list

#

if so, send it

#

if not, make on up

ancient spruce
#

i just can't focus on working in a single project

#

also i'm still thinking about merging your pr

cinder olive
novel gust
#

Uhh

#

So like is this discontinued

#

Cause I've been working on ltpl and lt has had 0 commits since the pr

#

Fun fact

#

Me and my friend remade the conductor-based movement system

#

Cause there was a bug where if you hit a tile early then you would move diagonally to the next tile

#

But the new system fixed it

#

I did a lot more things too

#

Like the loading screen actually loads in something now

#

And I added a loading bar

#

Now I'm working on an asset folder structure rework

#

And then themes

#

Then the song selection menu

#

That's the plan for ltpl, idk abt lt tho

ancient spruce
ancient spruce
#

Sorry for the inactivity :']

#

I made an update to the Map file, here's how it looks like right now

#

tiles are no longer forced to steps, but instead it uses miliseconds time now.

#

data will be used for game stuffs, such as what version of linetapper does it made on, and it's api level

#

apiLevel will be used for scripts and backward compability stuffs.

#

meta contains stuff like Artist, Charter, etc. This can be modified by the player later on the map / level editor.

#

name will be used as a display name for the song in-game. Let's say the song's name is "Lagtrain", but the name field in the level / map file is "Lagtrain (Remix)"

#

I might also add difficulty specific audios / song tracks if this is getting added ๐Ÿ˜บ

verbal bramble
#

i thought it would be all charter dependent

ancient spruce
#

"Charter dependent"?

verbal bramble
#

stuff is ugc

#

like osu and adofai customs

ancient spruce
#

I was going to add official tracks / songs ๐Ÿงโ€โ™‚๏ธ

verbal bramble
#

bwaq

ancient spruce
#

So yeah

#

๐Ÿˆ

verbal bramble
#

bundle them in like osu does, force the player to autodownload them

#

discord forgot that gifs should play, brah

#

now this tiny gif is stuck

ancient spruce
#

Smol

untold maple
#

yo

ancient spruce
#

Working on the transition rn wawa

delicate foxBOT
#

Color changed!

delicate foxBOT
novel gust
#

I had worked on the chart format a bit myself.

#

Tbh the step-millisecond system is something I'll need to port over

#

Along with the metadata and name of the song, and I would like to reorganize the way tiles are organized to make it match yours

#

Honestly I find it interesting the way that our codebases are so different

ancient spruce
#

That map file is still not final and will be changed during development so uhhh

novel gust
#

You have LineTapper, I have LineTapper: Project Lunar

ancient spruce
#

Stuff will change till i feel like it's fitting

novel gust
ancient spruce
#

LT

novel gust
#

LTPL

novel gust
#

I added a system for map bgs

#

Which has video support

#

Not for hashlink yet though

#

So I need to make ffmpeg externs

#

Which I've been dreading

#

It's a huge task for someone with very little c/c++ experience

ancient spruce
#

If i were you i'll just disable video support for HL target

#

Since i myself only use HL for quick tests and not release builds

novel gust
#

I would like to compile I guess release builds could be cpp

#

Anyway, anything changed visually for lt?

#

Cause rn I'm working on themes

ancient spruce
#

I'm planning to remake the intro, since i think the intro can be better

novel gust
#

I see

ancient spruce
#

But for now, i'm reworking the game's backend

#

A lot of the codes are just eugh

novel gust
#

Oh, I see

#

Also

ancient spruce
#

Yeah

novel gust
#

How did you do it?

ancient spruce
#

The bug happend because it could not found the next tile after previously hit tile iirc

#

Idk it was fixed a month ago ๐Ÿคทโ€โ™‚๏ธ

novel gust
#

Lmao

novel gust
#

This was why

#

So I had to redo the way it would find tiles and blah blah blah it's really boring

#

Just glad I solved it

ancient spruce
#

Oh, alright

verbal bramble
#

well i just have gameplay ready but im suffering with bezier paths

ancient spruce
#

๐Ÿˆ

#

I just made a gamebreaking changes ๐Ÿ”ฅ

thin scroll
ancient spruce
# ancient spruce
poll_question_text

I'm planning to add difficulties to LineTapper maps / levels, what do you think?

victor_answer_votes

6

total_votes

8

victor_answer_id

1

victor_answer_text

Sure, that'll be nice.

victor_answer_emoji_name

๐Ÿ‘

ancient spruce
# ancient spruce

Alright, based on the poll, i'll add difficulties to LineTapper, thank you for voting! ๐Ÿ˜บ

novel gust
#

now I have to add difficulties lmao

ancient spruce
#

LT Update โžก๏ธ

LineTapper's overall gameplay system is currently being reworked as the Map / Level files are no longer uses fixed step values.

And also every gameplay logics won't be placed directly inside PlayState, but instead on a Stage object (For now, it's called GameplayStage), Stage Object contains the player itself, and arrow tiles.

thin scroll
#

Woah.

ancient spruce
#

The stage object itself can be reused for the Level Editor (when lt have one lol)

thin scroll
#

-# LIke yes, I would like to stomp Goombas as I play the game for extra points, yes, yes I would.

ancient spruce
#

There will be a level editor CatThumbsUp

thin scroll
ancient spruce
#

uuuuuuuuuuuuuuuu

untold maple
#

2, U

novel gust
#

I have to port that all to ltpl

ancient spruce
#

The current PlayState.hx is kinda messy and there's no tile spawning system

novel gust
#

I just added support for themes and custom menu scripts

#

But I'm reworking hscript

ancient spruce
#

I mean you could stick with your current PlayState

novel gust
#

Cause you can't do FlxTypedGroup<FlxCamera>

ancient spruce
#

Wait why would you want that

novel gust
#

But just not so soon

novel gust
#

You could use FlxSprite instead

#

But currently it doesn't support the <>

#

So now I'm using SScript

#

Which greatly reduces the size of Script.hx

ancient spruce
#

I'm planning to use HScript Improved by CNE Devs

novel gust
#

Wait what

ancient spruce
#

Cause it already have import blacklists and stuff

novel gust
#

CNE made a hscript fork??

novel gust
#

Thanks for informing me

#

Now I need to rewrite my HScript again

ancient spruce
novel gust
#

No

#

But it makes sense now that I think about it

ancient spruce
novel gust
#

But yeah I'm working on themes with custom menu scripts and ini files

#

And I also made the loading screen load stuff plus it has a loading bar now

ancient spruce
#

Alrighty

#

I'm planning to rework LT

#

Since i got the transitions working, i think it'll be nice to have the loading screen placed when the game is transitioning

ancient spruce
#

I haven't turned on my pc yet :')

#

I'm preparing for school

#

Maybe later when i'm in school

novel gust
#

Bro tf is your timezone

#

It's 4:33 pm and I'm coming back from school on the bus rn

novel gust
#

Your in school you can't get in your pc

#

You're in a different building

ancient spruce
#

I have my laptop with me later

novel gust
#

How??

#

Do your bring your laptop to school or smth?

ancient spruce
#

Yeah

novel gust
#

How tf..

ancient spruce
novel gust
#

Oh

#

Your 12 hours away

ancient spruce
novel gust
#

Is it the 19th for you

novel gust
#

When are you able to get on your laptop?

#

The only place I can think of getting that much free time is in lunch or smth

ancient spruce
novel gust
#

I see

ancient spruce
#

Dw i'll post the video later

novel gust
ancient spruce
#

Whatt

novel gust
#

You're supposed to be focusing on class and what the teacher is saying, not coding a silly game in your laptop

#

Am I missing something..?

ancient spruce
#

They allow it as long we don't make too much noises

novel gust
#

You're so fking lucky..

#

I would get suspended for that shit

ancient spruce
#

Oof

#

I mean pretty sure they allow it because i'm on the software development division class but who knows

novel gust
#

Interesting.

#

I wish I could get on my laptop mid-class and work on ltpl

#

Anyways

novel gust
#

I have a concept for it in my head

#

That would go hard asf

#

W idea

#

I also reworked the whole ass asset system

#

Now there is a maps folder, a data folder, and a themes folder instead of an assets folder

#

Cause assets are in the theme now

ancient spruce
tawdry meadow
ancient spruce
ancient spruce
tawdry meadow
novel gust
ancient spruce
#

Eh that doesnt matter

novel gust
#

change it to windows or hashlink or else

#

or elsee uhh

#

theuhh

#

the haxe bot will murder you

ancient spruce
tawdry meadow
#

@delicate fox

novel gust
#

๐Ÿ’€

#

When I get home, I'll need to get cne's HScript in and then rearrange playstate into like playstate

#

A folder

#

With all of the elements

novel gust
#

I've been taking a small break from ltpl

#

When I return though I'll get HScript back up and running and I'll get a start on the song select screen

#

I know I won't finish it before I get burned out again, but at least it'll be something

ancient spruce
#

LT Update: Hold Tiles โžก๏ธ

Hold tiles will be added to LineTapper.

#

The hold tiles will have "release" tiles, which means when the player is about to reach the tile's end, the player is required to release the pressed key on time

ancient spruce
#

(it's not the hold tile preview, not yet :'])

ancient spruce
#

on second thought, how can i render the hold tile body

#

๐Ÿค” mmmm i'll figure this out later

#

i mean i can just use a 1x1 sprite then scale it but ehhh i'll think about it later

#

wait is it posible to use triangle rendering

#

or that'll slow down the game?

verbal bramble
#

yea but u gotta keep in mind its deoptimization cuz you break up the batching if you make it render between the same sprites

ancient spruce
#

๐Ÿ˜”

#

alrighty then

verbal bramble
#

or it might be the case with all sprites

#

anyways if you dont plan on adding beziers just make a 1px graphic and stretch it between 2 connecting tiles

ancient spruce
#

i do have an idea of making the hold tiles bendable by making points for the hold tile but i guess i'll just use a straight line for now

verbal bramble
#

if you do plan however, you'd need triangle mesh instead

#

which is override function drawComplex(camera)

#

and camera.drawTriangles(...)

ancient spruce
#

working on triangle meshes are

#

horror

verbal bramble
#

yes, if you need to rotate them its a whole damn horror movie

#

and you do need to rotate them in this case cuz it follows the path

ancient spruce
#

the player object also needs to get rotated

verbal bramble
#

not in my case x3c

#

hehe

ancient spruce
#

i have this stupid idea where i could just make bunch of 1x1 sprites based of the hold tile point counts then stretch it for each points

verbal bramble
#

i just thought it wouldnt look nice cuz the tiles are 4-sided and having more sides is ehh

ancient spruce
#

then use shaders to make it looks bendable

verbal bramble
#

that would be 6

ancient spruce
#

oh rigth

verbal bramble
#

2 planes for each dimension

novel gust
#

Shiit.

verbal bramble
#

left right
up down
closer further
depth x2

novel gust
#

Now I have to make hold tiles

#

I'm so cooked

ancient spruce
novel gust
#

Did I write that?

ancient spruce
#

nah

novel gust
#

Holy shit no I'm actually confused

ancient spruce
#

lol it's a joke

novel gust
#

That scared me

ancient spruce
#

nahh bro we good thumbs

novel gust
#

๐Ÿ‘

#

Mmg

#

Speaking of holds

#

Will it be a straight line

#

Or a curve

#

Cause if it's a curve then likeeee

verbal bramble
#

then yeah we're pretty much furked

novel gust
#

It's gonna be reeeeealy hard

ancient spruce
#

maybe just a straight line ๐Ÿ˜ญ

novel gust
#

Yeah

ancient spruce
#

can't get myself working on trianngle rendering again

#

it's horror

novel gust
#

Will it go diagonally

#

Or only left right up down

verbal bramble
#

for a straignt line its a simple math

novel gust
#

Yeah

#

Well I think I'll prob just use a graphic

#

It's much simpler then a mesh

verbal bramble
#

simple though it involves sin and cos i think

novel gust
#

The fuck

verbal bramble
#

actually

#

nvm

#

you just get the angle using Math.atan2

novel gust
#

Personally I would just have 2 tiles, get the top right of the release tile, then from a point that's slightly lower, make a graphic the width of the distance between the starting point and the first tile

#

Bang

#

Hold line done with 0 math

#

Well width or height depending on direction

#

But my idea is simple on paper and should be simple in code

#

So I'll get to work on it when I get on my laptop in like 20 mins

ancient spruce
#

hold idk

#

might change soon when i found a better design

verbal bramble
novel gust
ancient spruce
#

smalller

agile magnet
#

ooo me like

ancient spruce
verbal bramble
#

if you draw this and the tile has position thats not in line

#

then you'd have to use math to line it up :3

verbal bramble
ancient spruce
#

Like

๐ŸŸฆ ===<===<===โฌ…๏ธ

#

?

verbal bramble
#

ye

ancient spruce
#

I might add that on each beats :3

#

if i think about it, LT is heavy on the draw calls

#

though it's all fine on update calls

verbal bramble
#

not reallyyy

#

if you have ordered everything correctly you might end up with the same amount of draw quads as unique objects

#

rn in my game theres 4 objects
player, tile, tile approach and finish tile

tawdry meadow
#

โฌ†๏ธ

ancient spruce
verbal bramble
#

and i have no issues with rendering the whole lagtrain chart you made cuz most of the tiles are offscreen anyways

#

and also their alpha is set to 0 until its the time

ancient spruce
verbal bramble
#

yeah but heres the magic i did actually

ancient spruce
ancient spruce
verbal bramble
ancient spruce
#

Ahh, i see

verbal bramble
#

its an array of all the tiles after all

verbal bramble
ancient spruce
#

Wdym smooth?

#

It's just flxsprite

verbal bramble
#

mine is conductor based and the movement is jittery

ancient spruce
#

is your conductor time uses FlxSound music time?

verbal bramble
#

mm yea

ancient spruce
#

Oh my what is that

#

This is all i did

verbal bramble
#

weirds

#

does it get offsync often?

ancient spruce
#

Mine?

#

Nope

#

I mean it does offsync only if i unfocused the window

#

Wait i'mma try a thing

verbal bramble
#

time to add another compilation condition

#

i wondered why it takes so long to compile and i only just noticed i compile cpp instead

ancient spruce
#

LOL

verbal bramble
#

i mean it is a bit faster since i got a better cpu but man its still 40+ sec

#

hl compiles in under 10 now though

tawdry meadow
#

hl my beloved and be-hated

verbal bramble
#

i think i broke something

#

ohh right sys.time in hl is rounded up,,,

tawdry meadow
ancient spruce
verbal bramble
#

anyways for some reason player either stands in place and gets resynced
or goes mega fast

novel gust
#

i just got back

#

wth

stray hill
#

i would personally move to something like this

#

personally I think you could do it each beat

#

BUT

#

You need to be careful about overlap

#

easiest way to do this is to fade-out arrows after a beat has played

#

else you'd get sum like this

verbal bramble
#

yeah for that you would want flight curves

ancient spruce
coral knot
#

i really love the art style here

ancient spruce
ancient spruce
#

hold tiles ๐Ÿ˜ญ

ancient spruce
#

Aaand now it's showing this random line thing

leaden raft
#

accidental cytus

ancient spruce
#

LOLL

untold maple
#

i think flixel hates you

ancient spruce
#

For some reason setGraphicSize doesn't behave as how it supposed to be

#

Rewriting it to just scale modifications worked

#

Currently fixing the UP & DOWN hold tiles

#

Positioning the hold tiles is just ugh

#

Finally got the positioning correct

tawdry meadow
#

Nice

novel gust
#

Well now today I'll be working on hold tiles

#

Cause yesterday I was busy

#

(I'm so cooked blobimfine)

#

I also think I'll do an editor after the hold tiles

ancient spruce
#

Oookay i'mma retry that i guess cannycat

#

ok it no work

tawdry meadow
#

@quaint ferry imp

quaint ferry
#

hmmm

#

something crashed hbot :o

tawdry meadow
#

i ate a wire

#

troll emoji

quaint ferry
#

weird error

agile magnet
#

"Killed"

quaint ferry
#

i didn't write that

agile magnet
#

this is why you write descriptive error throwing people

tawdry meadow
#

linetapper was too powerful for haxebot

quaint ferry
#

@ancient spruce can you try again

tawdry meadow
quaint ferry
#

it heard the beeps and turned itself off

ancient spruce
ancient spruce
quaint ferry
#

yo those sliders are cool

ancient spruce
#

Thank you CatThumbsUp

tawdry meadow
#

haxebot didnt implode this time

ancient spruce
#

:0 it wok

#

*work

quaint ferry
#

weird

#

no mention of "killed" in my source

ancient spruce
#

Is it randomly throws "killed" message before it dies?

#

Kinda funny

quaint ferry
#

or my libs, so must be something from discord or cobalt

ancient spruce
#

Ahh, i see

agile magnet
#

may i suggest something

#

maybe lower the effects on already hit tiles?

#

because this seems kinda hard to read X)

ancient spruce
#

I'll tweak some of the anims

agile magnet
#

everything else is REALLY good though

quaint ferry
agile magnet
#

love how quickly youre making progress on this

tawdry meadow
#

increase note distance...

quaint ferry
#

maybe a solution is to use some kind of fading for the latest notes

#

darker the square represents the latest note to be hit

ancient spruce
#

So kinda lower the opacity?

quaint ferry
#

yeah

#

might be worth colour matching to the notes as well

ancient spruce
#

Aighty

ancient spruce
#

On second thought i might start working on the level / map editor concept

#

Prolly after i made the hold tiles fully functional

#

Cuz' i hate playing auto generated maps (it's directions are really just Std.int(Math.random()*4))

novel gust
#

how do you make test maps

quaint ferry
novel gust
#

๐Ÿ˜ญ

#

makes sense

ancient spruce
novel gust
#

oh

#

ok

ancient spruce
#

level editor thing - layout

novel gust
#

Damn you're working fast today

#

I can't keep upp

ancient spruce
#

Idk life is kinda boring rn

novel gust
ancient spruce
#

I just need something to distract me from reality

#

Anyways

novel gust
#

i just have a lot more projects than lt to work on

ancient spruce
#

Same โœŒ๏ธ

ancient spruce
#

The dummy tile will also colored based on steps (just like in the gameplay)

novel gust
#

ohh

#

im prob gonna yoink that code for the level editor btw if you're ok with that

#

if not then ill make my own

ancient spruce
#

"yoink that code"? What's that

#

(i have low english understanding sorry)

novel gust
#

i mean like im gonna take the code for your level editor if you're okay with it

untold maple
novel gust
#

yeah

#

it does

#

it's really informal though

ancient spruce
#

Oh, taking my level editor code?

novel gust
#

yeah, but only if you're fine with it

ancient spruce
#

Ahhh i need to learn those words

#

I mean it's okay though

novel gust
#

alright

ancient spruce
#

It's still LT anyways:3

novel gust
#

yep :D

#

i just did a big folder rework btw

#

for the source code

#

it's all reorginized cause the way it was before didn't make too much sense

#

shit

#

it just got stuck loading

#
Uncaught exception: Access violation
Called from sys.thread._Thread.$HaxeThread.~create.0(C:\HaxeToolkit\haxe\std/hl/_std/sys/thread/Thread.hx:158)
#

im so cooked

ancient spruce
#

Thread

novel gust
#

wtf is that error

#

OHHHH

#

ok so apparently it caught an error inside of the thread

#

now I need to try/catch in the thread

ancient spruce
#

I always try->catch threads

novel gust
#

i never needed to

#

this is a first for me

ancient spruce
#

Threads are unsafe iirc so it's better use try catches

#

I might be wrong so ๐Ÿคทโ€โ™‚๏ธ

#

I have reworked the input code, the input now feels much better (legit this time)

#

Offsets are now should be working

novel gust
#

and holds

#

๐Ÿ˜ญ

ancient spruce
#

Holds are hell

#

Well not really

#

Maybe it's just my way of doing it

#

I have a sprite with 1x200 dimension :')

#

Used by holds

ancient spruce
novel gust
ancient spruce
#

Offsets are now working properly after i changed the time system from steps to ms

novel gust
#

yeah

#

I've mainly been doing frontend work

ancient spruce
novel gust
#

intresting idea

ancient spruce
#

Float the step

#

Floating while stepping

#

Stepped on a float

novel gust
#

๐Ÿ’€

#

i got the error

#

Can't cast lime.app.Future to openfl.display.BitmapData

#

hm

#

ok now i'm able to see the stack

ancient spruce
#

Why do you

#

Cast future to BitmapData

novel gust
#

im very confused

#

idk where i even imported Future

#

idek what Future is

#

OOOOOH

#

ok i fixed it

#

also now the profile image is garunteed to load now

tawdry meadow
#

You just gotta use em right

novel gust
#

๐Ÿ’€

#

4th try is a bit promising

#

dynamic hold renderer 1/4 done

#

i just need multidirectional support

ancient spruce
#

How do you make the hold body?

novel gust
#

like the transparent part?

ancient spruce
#

Entirety of it i guess

novel gust
#

ok before I show the code, just know that this will be optimized, and that it isn't final so don't be grossed out cause i'm grossed out myself

#
var holdMid = new FlxSprite(spr1.x + spr1.width, spr1.y + (spr1.height * (1.5/8)));
holdMid.makeGraphic(Std.int(spr2.x - holdMid.x), Std.int((spr1.height * (4.5/8))));
holdMid.alpha = 0.3;
add(holdMid);
var holdTop = new FlxSprite(spr1.x + spr1.width, spr1.y + (spr1.height * (1.5/8)));
holdTop.makeGraphic(Std.int(spr2.x - holdTop.x), Std.int((spr1.height * (0.5/8))));
add(holdTop);
var holdBot = new FlxSprite(spr1.x + spr1.width, spr1.y + (spr1.height * (6/8)));
holdBot.makeGraphic(Std.int(spr2.x - holdBot.x), Std.int((spr1.height * (0.5/8))));
add(holdBot);
ancient spruce
#

Oh, you're using a group?

novel gust
#

well rn I''m just on rendering, it will be changed to a single sprite when i finish the rendering math itself

ancient spruce
#

Oh

novel gust
#

this looks the same but the sprites are in reverse

#

now just up and down

agile magnet
#

wouldnt it be better to just modify the pixels of the middle section

novel gust
#

wdym

agile magnet
#

oh nvm i didnt see the rest of the convo

novel gust
#

oh

#

ok

agile magnet
# novel gust wdym

have the middle section be one sprite, then make the pixels on the top and bottom white

tawdry meadow
#

Or create a 1xheight sprite n scale it

agile magnet
#

instead of making 2 new sprites

novel gust
novel gust
#

was make it 1 sprite

#

and draw rects on it

#

so instead of 3 it's 1

novel gust
#

wtf

#

my graphic gets cut off

#

like if i put it high enough it will just cut off in a certain point

coral knot
#

Put what high enough

novel gust
#

the hold

#

here look

coral knot
#

Like the width/height?

novel gust
#

no like when I move a tall graphic high enough

#

the x and y

coral knot
#

Ah

novel gust
#

let me show screenshots

#

the transparent box is the graphic btw

#

thats how its supposed to be

#

then let me show you when I move it up

#

it cuts off

#

I don't even have a cliprect

#

idk why

#

OHHH

#

WAIT

#

ok i fixed it

novel gust
#

i finished hold rendering

#

after like 3 hours

#

of pain and suffering

#

now I need to add it in-game

#

@ancient spruce can i have the graphic for the hold end tile

novel gust
#

i quit

#

ok now hold rendering is done

#

this is diagonal

#

it wasn't intended to be seen, so it's broken

#

im not gonna fix it though

#

now i can add it in-game

agile magnet
novel gust
#

i was just seeing what it would look like cause i was curious

agile magnet
#

fair enough

novel gust
#

it's not gonna be used

novel gust
#

no

#

i meant like

#

the arrow tile with the square

novel gust
novel gust
ancient spruce
#

Ouh

#

Stuff might change

novel gust
#

now gimmie the regular arrow tile

ancient spruce
#

Huh

#

The one you used is the same as mine

novel gust
novel gust
#

ok

ancient spruce
novel gust
ancient spruce
#

Huh

novel gust
#

like

#

when you hold a note

#

there is a glow behind the player

#

also how does hold note input work

ancient spruce
#

I used the same method in my fnf engine for it

novel gust
#

which was?

ancient spruce
#

Hold range

novel gust
#

explain

ancient spruce
#

If the player is inside hold range (tile.time+tile.length) and also held any key, count that as perfect tile hold

novel gust
#

tile.time..?

#

is that like

#

an ms?

ancient spruce
#

If the player released any key inside the hold range, then count that as bad tile hold & miss

ancient spruce
novel gust
#

oooh

#

i dont use ms

#

i use steps

#

what would i do

ancient spruce
#

You could use it too

#

Just make sure the length is also in steps

novel gust
#

so if conductor.time is within tile.step+tile.length

#

but 1. how would i check within

#
  1. how would i check the length of a tile
#

would i do endTile.step - tile.step?

ancient spruce
#

tile.length?

novel gust
#

no but

ancient spruce
#

Or what

novel gust
#

i dont have a length system

#

i basically do like if a tile is an end tile

#

then spawn a hold note between the previous tile and this tile

#

there isnt really a length

ancient spruce
#

Yyyeah that could work

novel gust
#

ok

#

so another

#

another question

#

how would i detect if the step is between length

ancient spruce
#

Just

#

Uhh

tawdry meadow
#

hai

novel gust
#

hi cobalt

ancient spruce
novel gust
#

thanks

ancient spruce
tawdry meadow
verbal bramble
novel gust
#

idk

#

oh wait i have Conductor.instance.step_ms

#

so step * step_ms i think

ancient spruce
#

I wonder how can i autormatically assign directions

#

because like

#

This is a very stupid code

novel gust
#

do smth similar

#

for the holds

novel gust
#

i just tried a few different things and none of them worked

ancient spruce
#

Last tile is a tile before the next tile

#

Wait hold on

novel gust
#

ik that

#

but how do i get it

ancient spruce
#

conduct.step > lastTile.step && conduct.step < lastTile.step + (nextTile.step-lastTile.step)

#

Last tile is the tile that have length value

novel gust
#

?

#

explain

#

i dont get it

#

nvm i got it

#

ohohoh

#

damn it.

#

the whole game just broke down

#

only in haxe

#

you do something and finally find the issuse, then out of nowhere the whole state stops working

#

like tiles dont die anymore, and hit detection stopped working

#

SFFFFF

#

HOW IS ONE LINE OF CODE BREAKING THE WHOLE STATE

#

IM SO DONNNNNEE

ancient spruce
#

Welcome to

novel gust
#
var lastTile:TileData = tileDatas[ArrowTile.indexOf(ArrowTile.toTileData(nextTile), tileDatas) - 1];
#

why does that break the game

#

i took a break for 5 hours

#

and can't figure it out

verbal bramble
#

what

#

did you overcomplicate things so much you can't fix it

novel gust
#

I wanna see if i can get cliprects

novel gust
#

mm

thin scroll
#

retweet to scare linetapper fans (corner tiles)

novel gust
#

AAAAA

#

CORNER TILES

ancient spruce
novel gust
#

its deeply built with directionals in mind

ancient spruce
#

Well the reworked one is also would be hard to change

#

The directions are locked to 4 directions

#

Left down up right

tawdry meadow
#

taps your line

novel gust
#

yeah

#

im just so fking mad

ancient spruce
#

Although, if i were to replace the enums with angles, this is possible

#

The systems might need to be reworked, though

ancient spruce
novel gust
#

i need it so that a tiles alpha is based on the next tiles alpha, but i still need the current tile to fade in at the correct time, but fade out with the next tile

#

how would i do that

#

ive been trying for 30 mins bro...

tawdry meadow
#

instead of [] [] []

make it [] -> [] | | [] | | []

#

then make it go clockwise

tawdry meadow
novel gust
#

like do you have to release at the right time

leaden raft
#

i always prefer the ones where you don't need to release at a certain time