Coder Social home page Coder Social logo

idol-threat's Introduction

Idol Threat

Building

Clone the repo and make a virtualenv for it running Python 3 (probably 3.8 or above). cd into the cloned repo, and:

pip install -r requirements.txt
npm install
python ./build.py

And then serve the ./build/ directory.

idol-threat's People

Contributors

colons avatar euricaeris avatar krabbkaka avatar theshillito avatar

Watchers

 avatar  avatar  avatar

Forkers

krabbkaka

idol-threat's Issues

our idols don't have legs

we should at the very least fade them out towards the bottom, or try harder to only ever present them in situations where this doesn't matter

i learnt some fun canvas strats on mdn that make the former of these solutions extremely achievable

stop spelling bonuses wrong

i don't think we're doing it anywhere user-facing any more, but even if it's only in code it'll bother me

Have story mode text appear letter by letter

It's a visual novel. Also it makes my ellipses moments work.

Tapping on a text box that is still filling will just auto-fill it, and there's an option to skip straight to the battle (for people who don't care or who have finished the story mode already).

Game logo?

Hardly a priority but would be nice to get one for the game and trailer.

Allow idols to graduate 'amicably'

Very rarely, graduating idols offer more reward than +1 to one random stat. "Left amicably!" or another equivalent phrase will also appear when this happens.

Thought: Maybe this always happens on idols who have four negative stats? They're probably old enough to know they aren't going to make it as they are.

Beating the story mode units should give you larger bonuses

The running joke in the story is that you are consuming the idols. While actually consuming the idols re: stats would be bad, we should offer more than +1 per idol for the effort.

Thinking out loud, the # of points that are randomly assigned could be 'the stage of the story' x 'the number of times you've beaten the story+1'. So 5 points for chapter 5, 15 points for chapter 5 second playthrough, etc.

Attacking yourself turns the attack into a buff

Had a brief chat with colons about this just now, but for a bit of background there was some talk in Mull of having some idol moves grant stat buffs. This would be pretty confusing as the game is currently, given we have no way of knowing how strong a move is, or whether a move is an attack/buff move without using it and remembering.

My thinking is that if we have the ability to target our own team (for healing), your non-healing moves won't damage them. Instead, they grant buffs that vary in strength (like reg attacks) and what stat they affect (move colour).

This way you can't ever accidentally kill your own unit, and you have the option of using a character who doesn't have a good move in the current fight to buff your party instead. Bonus - we don't need a new category of attacks.

Audio

The talk of adding a beep to scanning an idol in #37 made me realise there's zero audio in the game currently. No BGM and no SFX. I appreciate this is a browser game, but if I'm playing a game for more than 2 minutes, I'd like some appropriate music. SFX would also make things feel nicer IMO, I dunno, what does everyone else think?

Make attacks worth using

With the fights being 3v3, it's pretty disappointing that there's no current benefit for using more than 1 move (the strongest), 2 at a stretch if you happen to have a healing move. There's no strategy beyond 'hit one of them until they die, then hit the next one'.

I think that at the same time the attack names are generated, they should each be assigned one of three 'colours'. At the same time, the idol themselves should have a colour when generated. We then have a simple 'weapon triangle', which means we now have reasons to use one move over another, who you're using it against, and a reason to create a good, balanced team.

So, as an example: your opponent has two green units and a red unit. I have a blue unit (which for the sake of the example is weak to red attacks) and thus it's in my best interests to remove the red unit as a priority.

In this example, red beats blue, blue beats green, green beats red. As far as the game goes, attacks will do 80%/100%/120% damage based on the colour of the attack versus the colour of the target. An extra 30% for an attack made by an idol of the same colour as the attack, for a max hit of 150% against a weak enemy.

If attacks are colour coded, we would want the colour triangle to be visible on the battle screen, or at least viewable in-battle (edit: actually, we might be able to get away with visual feedback when you've selected an attack, as the idols you can target could show whether it's strong against them or not). At the same time, it allows us to give a fourth colour to healing moves, so we can see what they are without trial and error.

In-game, we just refer to these 'colours' as different characteristics. So for example, red could be 'bossy' idols, etc.

balance

open questions:

  • how long should it be before you can re-scan the barcode used to generate an idol you have since dismissed?
  • how much influence should stats have on attack power and defense?
  • how much influence should affinity have on attack power and defense?
  • how quickly should the base stats of story mode characters increase?
  • should quick battles scale to the stats of your unit?

The feeding stats screen should clarify how much a stat is being raised/lowered by

This is obviously not a huge issue when a calculation has a positive integer involved, but when there's a halved negative integer involved, I've found myself doing basic maths in my head to see if the loss of 10-20 points in one stat is worth the boost to another stat.

I'm seeing this as smaller numbers to the right of the 'new stats', with green/red colour coding to show positive/negative changes.

cache-bust

shouldn't matter until we're actually live, but it'd certainly help in development, and would also help if we have post-shipment bugfixes

a summary from our slack:

just means we'd have to make the build script append, like, ?[random string] to all internal assets in index.html every time it runs

Track some feeding/kill/graduation stats

As I was feeding trash idols to my team last night, I realised it would have been quite nice to see how many idols she'd eaten. Something in-line with the rarity on the idol stats screen? I think it'll add a nice bit of extra context when we have people showing off idols that have finished the campaign.

It could also be nice to see total kills, or a win/lose ratio, but I don't think these are as important.

I think graduations should also be tracked. The way I see this done is that, on the graduation stats screen, we have something like "Welcome to the Xth graduation ceremony", for a bit of flavour and an indication of how many prior graduations there have been.

You should be able to replay the story mode but with stronger idols, indefinitely

Mentioned this before as well, but 'prestiging' the campaign is silly and something we should do. We should also track the number of times its been beaten in the button to play more story.

It'd be funny to keep whacking a '+' ala 'New Game+' on the end of it, but unless we can get away with making the button a marquee, perhaps unreasonable!

use euri's unit names list

this is of zero mechanical consequence, but still probably helps people feel ownership of any given trio of idols

Allow me to retake a photo in the dialogue that moans about it

Dismissing the dialogue that says that my photo was bad and then clicking on the photo button again is one step too many, because people will 100% be reattempting to take that photo. The dialogue box should have 'try again' and 'i give up' options.

Solve the crashing that can happen when recruiting an idol

For me, it's typically happening on every second idol. However, I remember it being one in every 10 or so, and has reduced over time. Might be related to how much I've played?

The crashes happen on the idol pop-in screen. On some occasions, the idol doesn't register and has to be rescanned upon reloading the app. This is quite rare, though.

Something I have noticed is that I can tell if it's about to crash, because the layer load-in slows right down, and it seems to keep happening when loading in the eyes. Might be coincidence though.

A ranking system for quick battles

Not much to say other than making this feature useful after each idol has fed once or twice. I don't think auto-scaling is the answer, though it should be an option.

the audition UI should never show half-loaded layers

and we should only start rendering layers once we're sure we have all the images and can finish the animation cleanly

we can fill the time while we wait for those images to load with some sparkly garbage over the barcode photo you took, since we still have it in memory at this point

the recruit button will still always be visible

Consider swapping Endurance for something else, perhaps Luck

As mentioned by @colons in a previous discussion, we may want to consider swapping endurance for another stat, as it's pretty similar to defence. If we do this, I propose we use luck instead. What that could possibly effect:

  • Critical hit chance (hey we should probably have crits)
  • Dodge chance (cautious on this as we shouldn't aim for battles to be longer)
  • Bonus stat points for defeating an idol (maybe?)

Thoughts welcome!

Let me save an image of my team and their stats

I think that when people really dig into the game, they're going to want to pump out some images of their main three. Instead of having to deal with three separate images (and manually getting them), it'd be nice if we could essentially do screen grabs of each of the three's stat screens, then stitch them into one large image to make it easier to share.

build script doesn't build styles

index.html refers to style.css, which doesn't exist—but style.less does. Moving style.less to style.css lets the stylesheet be loaded.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.