ai-economy-simulator / ecosim-server

Apache License 2.0
0 stars 3 forks source link

Call Stack Size Exceeds on advancePlayerChance() recursion #4

Open fliptrail opened 6 months ago

fliptrail commented 6 months ago
Exception in PromiseRejectCallback:
/home/fliprail/Projects/ecosim-server/src/services/playerChanceLoop.ts:2
"use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:true});var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:true})};var __copyProps=(to,from,except,desc)=>{if(from&&typeof from==="object"||typeof from==="function"){for(let key of __getOwnPropNames(from))if(!__hasOwnProp.call(to,key)&&key!==except)__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable})}return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:true}),mod);var playerChanceLoop_exports={};__export(playerChanceLoop_exports,{advancePlayerChance:()=>advancePlayerChance});module.exports=__toCommonJS(playerChanceLoop_exports);const advancePlayerChance=__name(async room=>{const playerRef=room.state.playerChanceIterator.next();if(playerRef.done){room.state.playerChanceIterator=room.state.players.keys();advancePlayerChance(room)}else{room.state.activePlayer=playerRef.value;room.state.playerChanceTimer=room.clock.setTimeout(room2=>{advancePlayerChance(room2)},room.state.playerChanceLength,room)}},"advancePlayerChance");

RangeError: Maximum call stack size exceeded

This happens obviously when the event loop runs for a very long time.