2024-03-03 11:53:50 +00:00
let modInfo = {
2024-03-07 17:49:20 +00:00
name : "Progressbar Incremental" ,
id : "nif/pbic" ,
author : "Nif" ,
2024-03-03 11:53:50 +00:00
pointsName : "points" ,
2024-03-15 15:48:00 +00:00
modFiles : [ "data/ranks.js" , "data/levels.js" , "data/progress.js" , "data/super progress.js" , "data/files.js" , "data/integrals.js" , "data/achievements.js" , "data/tree.js" ] ,
2024-03-03 11:53:50 +00:00
discordName : "" ,
discordLink : "" ,
2024-03-07 17:49:20 +00:00
initialStartPoints : new Decimal ( 1 ) , // Used for hard resets and new players
2024-03-03 11:53:50 +00:00
offlineLimit : 1 , // In hours
}
// Set your version in num and name
let VERSION = {
2024-03-17 19:59:59 +00:00
num : "1.1" ,
name : "Slight Adjustments" ,
2024-03-03 11:53:50 +00:00
}
2024-03-07 18:38:17 +00:00
let changelog = ` <h1>Changelog:</h1><br><br>
2024-03-17 19:59:59 +00:00
< h3 > v1 . 1 Slight Adjustments < / h 3 > < b r >
- Made all renders of Decimal objects use format ( ) < br >
2024-03-17 20:03:10 +00:00
- Adjusted file costs and filestone 2 effect < br > < br >
2024-03-17 19:59:59 +00:00
< h3 > v1 . 0 First Release < / h 3 > < b r >
2024-03-15 18:06:40 +00:00
- Added Progress , Super Progress , and File layers . < br >
- Added bars Alpha to Lambda . < br >
- Added ranks Alpha to Zeta . < br >
- Added 3 buyables and 2 super buyables . < br >
- Added 10 Filestones . < br >
- Added 11 Directory upgrades . < br >
- Added Integral reset . < br >
2024-03-17 20:03:10 +00:00
- Added 29 achievements . < br >
2024-03-15 18:06:40 +00:00
- Current endgame : 1 integral . < br > `
2024-03-03 11:53:50 +00:00
2024-03-15 15:48:00 +00:00
let winText = ` Download 100% complete.<br><br>You won! Congratulations!<br>More content coming soon... `
2024-03-03 11:53:50 +00:00
// If you add new functions anywhere inside of a layer, and those functions have an effect when called, add them here.
// (The ones here are examples, all official functions are already taken care of)
var doNotCallTheseFunctionsEveryTick = [ "blowUpEverything" ]
function getStartPoints ( ) {
return new Decimal ( modInfo . initialStartPoints )
}
// Determines if it should show points/sec
function canGenPoints ( ) {
2024-03-07 17:49:20 +00:00
return getAlphaLevel ( ) . gte ( 0 )
2024-03-03 11:53:50 +00:00
}
// Calculate points/sec!
function getPointGen ( ) {
2024-03-07 17:49:20 +00:00
if ( ! canGenPoints ( ) ) return new Decimal ( 0 )
2024-03-09 13:28:55 +00:00
// additive
2024-03-07 19:22:08 +00:00
let gain = getAlphaEffect ( )
2024-03-13 17:02:37 +00:00
gain = gain . add ( getEtaEffect ( ) )
2024-03-09 13:28:55 +00:00
// multiplicative
gain = gain . mul ( getBetaEffect ( ) )
gain = gain . mul ( getGammaEffect ( ) )
gain = gain . mul ( getDeltaEffect ( ) )
gain = gain . mul ( getZetaEffect ( ) )
2024-03-15 15:48:00 +00:00
gain = gain . mul ( getLambdaEffect ( ) )
gain = gain . mul ( tmp . ach . effect )
2024-03-09 13:28:55 +00:00
if ( hasMilestone ( 'f' , 0 ) ) gain = gain . mul ( getTotalLevel ( ) . add ( 1 ) . log ( 5 ) . add ( 1 ) )
// exponentiative
2024-03-10 17:19:22 +00:00
if ( gain . gte ( 1 ) ) {
gain = gain . pow ( getEpsilonEffect ( ) )
2024-03-13 17:02:37 +00:00
gain = gain . pow ( getIotaEffect ( ) )
2024-03-15 15:48:00 +00:00
gain = gain . pow ( buyableEffect ( 'sp' , 12 ) )
2024-03-10 17:19:22 +00:00
if ( hasMilestone ( 'f' , 3 ) ) gain = gain . pow ( 2 )
if ( hasUpgrade ( 'f' , 11 ) ) gain = gain . pow ( upgradeEffect ( 'f' , 11 ) )
}
2024-03-09 13:28:55 +00:00
// softcaps
2024-03-15 15:48:00 +00:00
gain = softcap ( gain , getKappaEffect ( ) . mul ( 1000 ) , d => d . add ( 1 ) . log ( Math . E ) . add ( 1 ) . pow ( 2 ) . sub ( 1 ) . div ( 2 ) )
gain = softcap ( gain , Decimal . pow ( 2 , 128 ) , _ => new Decimal ( 0 ) , player . points )
2024-03-03 11:53:50 +00:00
return gain
}
// You can add non-layer related variables that should to into "player" and be saved here, along with default values
function addedPlayerData ( ) { return {
} }
// Display extra things at the top of the page
var displayThings = [
2024-03-13 17:02:37 +00:00
"All exponentiative upgrades only take affect above 1." ,
2024-03-15 15:48:00 +00:00
( ) => getPointGen ( ) . gte ( getKappaEffect ( ) . mul ( 1000 ) ) ? "Your points per second are being logarithmically softcapped over " + getKappaEffect ( ) . mul ( 1000 ) + "/s" : ""
2024-03-03 11:53:50 +00:00
]
// Determines when the game "ends"
function isEndgame ( ) {
2024-03-15 15:48:00 +00:00
return player . i . points . gt ( 0 )
2024-03-03 11:53:50 +00:00
}
// Less important things beyond this point!
// Style for the background, can be a function
var backgroundStyle = {
}
// You can change this if you have things that can be messed up by long tick lengths
function maxTickLength ( ) {
return ( 3600 ) // Default is 1 hour which is just arbitrarily large
}
// Use this if you need to undo inflation from an older version. If the version is older than the version that fixed the issue,
// you can cap their current resources with this.
2024-03-13 17:02:37 +00:00
function fixOldSave ( oldVersion ) {
2024-03-03 11:53:50 +00:00
}