2024-04-20 10:10:34 +00:00
<!DOCTYPE html>
< html lang = "en" dir = "ltr" id = "page-top" >
< head >
< meta charset = "UTF-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
2024-04-23 14:29:54 +00:00
< meta property = "og:title" content = "Resources | Cassette Beasts Shrine" >
2024-04-20 10:10:34 +00:00
< meta charset = "utf-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< meta name = "description" content = "A collection of resources for Cassette Beasts." >
< meta name = "generator" content = "Eleventy v2.0.1" >
< meta property = "og:type" content = "website" >
< meta property = "og:url" content = "https://leilukin.neocities.org/shrines/cassettebeasts/resources/" >
< meta property = "og:site_name" content = "Leilukin's Hub" >
< meta property = "og:locale" content = "en_MY" >
< meta property = "og:description" content = "A collection of resources for Cassette Beasts." >
< meta name = "twitter:card" content = "summary" >
< meta name = "twitter:url" content = "https://leilukin.neocities.org/shrines/cassettebeasts/resources/" >
< meta name = "twitter:description" content = "A collection of resources for Cassette Beasts." >
< link rel = "canonical" href = "https://leilukin.neocities.org/shrines/cassettebeasts/resources/" >
< link rel = "stylesheet" href = "/assets/css/main.css" >
< link rel = "stylesheet" href = "/assets/css/cassettebeasts.css" >
< link rel = "stylesheet" href = "/assets/fonts/noto-sans/noto-sans.css" >
< link href = "/assets/fonts/fontawesome/css/fontawesome.css" rel = "stylesheet" / >
< link href = "/assets/fonts/fontawesome/css/brands.css" rel = "stylesheet" / >
< link href = "/assets/fonts/fontawesome/css/solid.css" rel = "stylesheet" / >
2024-04-21 23:15:48 +00:00
< link rel = "apple-touch-icon" sizes = "180x180" href = "/assets/shrines/cassettebeasts/images/cb-icon.png" >
< link rel = "icon" type = "image/png" sizes = "32x32" href = "/assets/shrines/cassettebeasts/images/cb-icon.png" >
< link rel = "icon" type = "image/png" sizes = "16x16" href = "/assets/shrines/cassettebeasts/images/cb-icon.png" >
2024-04-20 10:10:34 +00:00
< link rel = "manifest" href = "/assets/favicon/site.webmanifest" >
< title >
2024-04-23 14:29:54 +00:00
Resources | Cassette Beasts Shrine | Leilukin's Hub
2024-04-20 10:10:34 +00:00
< / title >
< / head >
< body >
< header class = "hero" >
< div class = "hero__top-bar hidden" > < / div >
< div class = "hero__img" >
< picture >
2024-04-21 23:15:48 +00:00
< source srcset = "/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media = "(orientation: landscape)" / >
< img src = "/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt = "Banner of Cassette Beasts Shrine" / >
2024-04-20 10:10:34 +00:00
< / picture >
< / div >
< / header >
< style >
.hero {
width: 100%;
background-color: var(--clr-hero-bg);
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
}
.hero__top-bar {
background-color: var(--clr-navbar-bg);
width: 100%;
2024-04-23 07:57:54 +00:00
padding: 0.5em 0.7em;
2024-04-20 10:10:34 +00:00
}
.hero__img {
display: grid;
place-content: center;
}
.hero img {
2024-04-20 11:43:13 +00:00
object-fit: contain;
2024-04-20 10:10:34 +00:00
overflow: hidden;
2024-04-20 11:43:13 +00:00
max-height: 16rem;
2024-04-26 16:12:13 +00:00
2024-04-20 10:10:34 +00:00
}
< / style >
< script defer >
const hero = document.querySelector(".hero");
const todayEvent = getTodayEvent();
const heroTopBarEl = document.querySelector(".hero__top-bar");
const headerImgEl = document.querySelector(".hero__img");
if (todayEvent != "No event") {
heroTopBarEl.classList.remove('hidden');
heroTopBarEl.innerHTML = getBlurbHtml(todayEvent);
}
function getTodayEvent() {
const date = new Date();
const month = date.getMonth() + 1;
const day = date.getDate();
if (month == 4 & & day == 26)
return "CB Anniversary";
2024-04-23 08:13:01 +00:00
else if (month == 10 & & day == 4)
2024-04-20 10:10:34 +00:00
return "Pier Anniversary";
else
return "No event";
}
function getBlurbHtml(day) {
2024-04-23 08:13:01 +00:00
const currentYear = new Date().getFullYear();
const cbReleaseDate = new Date("2023-04-26").getFullYear();
const pierReleaseDate = new Date("2023-10-04").getFullYear();
const cbAnniversary = currentYear - cbReleaseDate;
const pierAnniversary = currentYear - pierReleaseDate;
2024-04-20 10:10:34 +00:00
switch (day) {
case "CB Anniversary":
return `
2024-04-23 08:13:01 +00:00
Today is the ${cbAnniversary}-year anniversary of the release of < cite > Cassette Beasts< / cite > !
2024-04-20 10:10:34 +00:00
`;
break;
case "Pier Anniversary":
return `
2024-04-23 08:13:01 +00:00
Today is the ${pierAnniversary}-year anniversary of the release of < cite > Pier of the Unknown< / cite > , the first DLC expansion of < cite > Cassette Beasts< / cite > !
2024-04-20 10:10:34 +00:00
`;
break;
default:
return ``;
}
}
< / script >
< nav class = "navbar" >
< ul class = "nav__menu" >
< li >
< a href = "/shrines/cassettebeasts/" > Shrine Home< / a >
< / li >
< li >
< a href = "/shrines/cassettebeasts/articles/" > Articles< / a >
< / li >
< li >
< a href = "/shrines/cassettebeasts/gamelog/" > Game Log< / a >
< / li >
< li >
< a href = "/shrines/cassettebeasts/featured/" > Featured< / a >
< / li >
< li >
< a href = "/shrines/cassettebeasts/trivia/" > Trivia< / a >
< / li >
< li >
< a aria-current = "page" href = "/shrines/cassettebeasts/resources/" > Resources< / a >
< / li >
< li > < a href = "/shrines/" > Shrine Index< / a > < / li >
< li > < a href = "/" > Main Site< / a > < / li >
< / ul >
< / nav >
< style >
.navbar {
background: var(--clr-navbar-bg);
padding: 0 0.6rem;
width: 100%;
z-index: 999;
position: sticky;
top: 0;
}
.navbar a {
color: var(--clr-navbar-link);
text-decoration: none;
cursor: pointer;
}
.navbar a:hover {
color: var(--clr-link-hover);
}
.navbar a:focus {
outline-offset: 0.3em;
outline: 0.15em solid var(--clr-navbar-link);
}
.nav__menu {
list-style: none;
padding: 0;
display: flex;
justify-content: space-evenly;
flex-wrap: wrap;
gap: 0.5rem;
}
< / style >
< main >
< header class = "main__header" >
< h1 > Cassette Beasts Resources< / h1 >
< p > A collection of resources for Cassette Beasts.< / p >
< / header >
< div class = "content__wrapper" >
< aside class = "left-sidebar" >
< details class = "toc__wrapper sidebar--sticky" >
< summary class = "toc__heading" >
On This Page
< / summary >
< nav class = "toc" >
< ol >
< li > < a href = "#discussions" > Discussions< / a >
< / li >
< li > < a href = "#graphics" > Graphics< / a >
< / li >
< li > < a href = "#game-guides" > Game Guides< / a >
< / li >
< li > < a href = "#modding" > Modding< / a >
< / li >
< / ol >
< / nav >
< / details >
< / aside >
< style >
.toc__wrapper {
max-height: 89vh;
overflow: auto;
background-color: var(--clr-content-bg);
padding: 1rem 1.3rem;
}
.toc__heading {
font-size: 1.3rem;
font-weight: 700;
color: var(--clr-sub-heading);
cursor: pointer;
}
.toc ol,
.toc ol ol {
display: grid;
gap: 0.3em;
}
.toc ol {
border-top: 0.1em solid var(--clr-title-border);
padding-left: 1.3em;
padding-top: 1em;
}
.toc ol ol {
border-top: none;
list-style-type: disc;
padding-left: 1em;
padding-top: 0.3em;
}
.toc ol a {
font-size: 1.1rem;
padding-left: 0.3em;
}
.toc ol ol a {
padding: 0;
font-size: 1rem;
}
< / style >
< div class = "content " >
< div class = "heading-wrapper h2" >
< h2 id = "discussions" > Discussions< / h2 >
< a class = "heading-anchor" href = "#discussions" aria-labelledby = "discussions" > < span hidden > #< / span > < / a > < / div >
< ul class = "content-list" >
< li > < a href = "https://discord.gg/byttenstudio" target = "blank" > Bytten Studio Discord server< / a > — The official Discord server of the developer of < cite > Cassette Beasts< / cite > , including channels for < cite > Cassette Beasts< / cite > .< / li >
< li > < a href = "https://www.reddit.com/r/cassettebeasts/" target = "_blank" > Cassette Beasts subreddit< / a > < / li >
< / ul >
< div class = "heading-wrapper h2" >
< h2 id = "graphics" > Graphics< / h2 >
< a class = "heading-anchor" href = "#graphics" aria-labelledby = "graphics" > < span hidden > #< / span > < / a > < / div >
< ul class = "content-list" >
< li > < a href = "https://www.spriters-resource.com/pc_computer/cassettebeasts/" target = "_blank" > Cassette Beasts on The Spriters Resource< / a > — Including character portraits, monster sprites, game elements, icons and more.< / li >
< li > < a href = "https://discord.com/channels/594939411775619102/1133943053367910591/1164033894706860143" target = "blank" > Chart of bootleg sprites on Bytten Studios Discord server< / a > — Including monsters from Update 1.2 and the "Pier of the Unknown" DLC< / li >
< / ul >
< div class = "heading-wrapper h2" >
< h2 id = "game-guides" > Game Guides< / h2 >
< a class = "heading-anchor" href = "#game-guides" aria-labelledby = "game-guides" > < span hidden > #< / span > < / a > < / div >
< ul class = "content-list" >
< li > < a href = "https://steamcommunity.com/sharedfiles/filedetails/?id=2969626908" target = "blank" > Bootleg Monsters and Ritual Candle Guide< / a > by Lost_Kitty< / li >
< li > < a href = "https://www.reddit.com/r/cassettebeasts/comments/13tyaxv/quick_guide_on_bootleg_hunting_with_candles/" target = "blank" > Quick guide on bootleg hunting with Ritual Candles< / a > by u/Zealousideal-Try4666< / li >
< li > < a href = "https://steamcommunity.com/sharedfiles/filedetails/?id=3046262124" target = "_blank" > How to obtain all Prize Tickets in the "Pier of the Unknown" DLC< / a > by Argo Dargo< / li >
< / ul >
< div class = "heading-wrapper h2" >
< h2 id = "modding" > Modding< / h2 >
< a class = "heading-anchor" href = "#modding" aria-labelledby = "modding" > < span hidden > #< / span > < / a > < / div >
< ul class = "content-list" >
< li > < a href = "https://modworkshop.net/game/cassette-beasts" target = "blank" > Cassette Beasts mods on ModWorkshop< / a > < / li >
< li > < a href = "https://wiki.cassettebeasts.com/wiki/Modding:Modding" target = "blank" > Modding resources, guides and tutorials on the official Cassette Beasts wiki< / a > < / li >
< / ul >
< / div >
< aside class = "right-sidebar" >
< div class = "shrine__info sidebar--sticky" >
< h2 > About< / h2 >
< p > Welcome to Leilukin's shrine for < cite > Cassette Beasts< / cite > , an indie monster collecting turn-based open-world role-playing video game developed by Bytten Studio and published by Raw Fury.< / p >
< h3 > Links< / h3 >
< ul >
< li > < a href = "https://www.cassettebeasts.com/" target = "_blank" > Official Website< / a >
< / li >
< li > < a href = "https://wiki.cassettebeasts.com/" target = "_blank" > Official Wiki< / a > < / li >
< li > < a href = "https://store.steampowered.com/app/1321440/Cassette_Beasts/" target = "_blank" > Steam< / a > < / li >
< li > < a href = "https://bytten-studio.com/" target = "_blank" > Bytten Studio< / a > < / li >
< / ul >
< / div >
< / aside >
< style >
.right-sidebar {
background-color: var(--clr-content-bg);
font-size: clamp(0.9rem, 0.9rem + 3vw, 1rem);
}
.shrine__info {
padding: 1rem;
}
.shrine__info h2 {
font-size: clamp(1.5rem, 1rem + 3vw, 1.7rem);
margin-bottom: 0.2em;
}
.shrine__info h3 {
font-size: clamp(1.3rem, 1rem + 3vw, 1.5rem);
margin-top: 1em;
}
.shrine__info ul {
margin-top: 0.5em;
}
< / style >
< / div >
< style >
.breadcrumbs {
list-style: none;
padding: 0;
margin: 0 0 0.7em 0;
display: flex;
gap: 0.5em;
flex-wrap: wrap;
justify-content: center;
}
2024-04-24 17:31:54 +00:00
.breadcrumbs li::after {
content: '➔';
padding-left: 0.3em;
}
2024-04-20 10:10:34 +00:00
< / style >
< / main >
< footer class = "footer" >
< p > Made with ♥ by Leilukin | Shrine Launched: 3 August 2023< / p >
2024-04-26 09:31:18 +00:00
< p > Back to: < a href = "/shrines/" > Shrine Index< / a > | < a href = "/" > Leilukin' s Hub< / a > < / p >
2024-04-20 10:10:34 +00:00
< / footer >
< style >
.footer {
margin-top: auto;
background: var(--clr-main-footer-bg);
padding: 0.8rem;
text-align: center;
display: grid;
}
.footer p {
padding: 0;
}
.footer__links {
justify-self: center;
list-style: none;
margin: 0;
padding: 0;
display: flex;
gap: 0.7em;
}
2024-04-20 10:59:51 +00:00
.footer__links li:not(:last-child)::after {
content: '|';
padding-left: 0.6em;
}
2024-04-20 10:10:34 +00:00
@media only screen and (min-width: 600px) {
.footer {
width: 100%;
}
}
< / style >
2024-04-21 19:05:20 +00:00
< button class = "top-btn hidden" aria-label = "Scroll to top" >
< i class = "fa-solid fa-chevron-up" > < / i >
2024-04-20 10:10:34 +00:00
< / button >
< style >
.top-btn {
position: fixed;
2024-04-21 19:05:20 +00:00
margin: 0;
padding: 0;
2024-04-21 19:08:40 +00:00
bottom: 0.5rem;
right: 0.5rem;
2024-04-20 10:10:34 +00:00
z-index: 999;
border: none;
2024-04-21 19:05:20 +00:00
background-color: var(--clr-top-btn-bg);
color: var(--clr-top-btn-txt);
2024-04-20 10:10:34 +00:00
border-radius: 50em;
2024-04-21 19:08:40 +00:00
width: 2rem;
2024-04-21 19:05:20 +00:00
aspect-ratio: 1 / 1;
2024-04-20 10:10:34 +00:00
}
.top-btn:focus {
2024-04-21 19:05:20 +00:00
outline: 0.25em solid var(--clr-top-btn-bg);
2024-04-20 10:10:34 +00:00
outline-offset: 0.15em;
}
< / style >
< script defer >
const topButton = document.querySelector(".top-btn");
window.onscroll = () => {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
topButton.classList.remove("hidden");
} else {
topButton.classList.add("hidden");
}
}
topButton.addEventListener('click', () => {
window.scrollTo({
top: 0,
left: 0,
behavior: "smooth",
});
});
< / script >
< / body >
< / html >