Estos pasos están recomendados para trabajar con Linux, si usas Windows, deberías instalar WSL2 y configurar VSCode para trabajar con WSL y seguir los pasos de Linux.
⚠️ Si estás configurando para trabajar con WSL, recomendamos no usar la instalación de Foundry en windows y en su lugar instalar Foundry en WSL desde la terminal siguiendo los pasos en el apartado "Hosting a Dedicated Server with NodeJS" en la guía de instalación de Foundry. Usar una instalación existente en Windows es posible, en cuyo caso sería recomendable tener separadas las carpetas de los datos de foundry para desarrollo y producción.
- Clonar el repositorio en la ubicación que resulte más conveniente. En Sourcetree esto se hace en File-> Clone, y desde la consola:
git clone https://github.com/AnimaBeyondDevelop/AnimaBeyondFoundry.git
-
Instalar node (18) si no lo tienes: https://nodejs.org/en/download/
-
En VSCode, añadir la carpeta del repositorio al worskpace (botón derecho en el panel izquierda y "Add folder to workspace" por ejemplo). Luego, hacer clic derecho sobre ella y "Open in integrated terminal". Eso abre una terminal de comandos de windows en dicho directorio (...\FoundryVTT\Data\systems\AnimaBeyondFoundry). En esa terminal se debe ejecutar el comando:
npm install
⚠️ Si estás usando WSL, para abrir la carpeta del repositorio en VSCode deberás seguir los pasos aquí. Lo más sencillo es navegar desde la terminal a la carpeta del repositorio y lanzarcode .
.
-
Duplica el fichero
foundryconfig.example.json
y renómbralo afoundryconfig.json
, luego edítalo y el campodestPath
rellénalo con la ruta donde tengas la carpeta de sistemas, por ejemplo:- Windows:
C:/Users/<nombredeUsuario>/AppData/Local/FoundryVTT/Data/systems
- Linux:
/home/<nombredeUsuario>/.local/share/FoundryVTT/Data/systems
- WSL (server installation):
/home/<nombredeUsuario>/foundrydata/Data/systems
- Windows:
-
Hasta ahora esta carpeta no tiene ningún efecto sobre Foundry. Para generar la carpeta real del sistema, ejecutamos el comando:
npm run build:dev
, para generarla sin más, o
npm run dev
, para generarla y que además se vuelva a generar si hacemos algún cambio en la carpeta del repositorio.
- Abrir Foundry. Deberíamos ver Anima Beyond Fantasy entre nuestros sistemas instalados.
⚠️ Si estás usando WSL y has seguido los pasos para instalar Foundry descritos en el apartado "Hosting a Dedicated Server with NodeJS" en la guía de instalación de Foundry, deberás lanzar foundry desde la terminal connode $HOME/foundryvtt/resources/app/main.js --dataPath=$HOME/foundrydata`Por comodidad, puede crearse un alias con
echo "alias foundry='node $HOME/foundryvtt/resources/app/main.js --dataPath=$HOME/foundrydata'" >> ~/.bash_aliasesTras crear el alias (y reiniciar la terminal para que surta efecto), bastará con usar el comando
foundry
para lanzarlo. Para conectarse habrá que abrir cualquier explorador y abrir la urllocalhost:30000
. Aunque el alias es suficiente cuando se tiene una sola versión instalada, el cli de Foundry (foundryvtt-cli) es una buena herramienta para gestionar distintas instalaciones. En esta página pueden encontrarse instrucciones para gestionar instalaciones con foundryvtt-cli.
a) Para empezar a trabajar en algo en lo que no se esté trabajando ya:
- Nos colocamos en la rama DEVELOP. -En Sourcetree, la primera vez, tenemos que ir al panel de la izquierda, a >Remotes>background> y hacer doble click en la rama en la que queremos colocarnos. Al hacerlo veremos como ahora en el panel de la izquierda, en >Branches, aparece la rama en la que acabamos de colocarnos (las ramas que aparecen en >Branches son las que tenemos en local, y las que están en >Remote son las que están en GitHub).
- Las siguientes veces, cuando ya tengamos Develop en el desplegable de >Branches, pues simplemente hacemos doble clic ahí para colocarnos en ella.
-
Nos aseguramos de que tenemos la versión más actualizada del repositorio: Botón FETCH, y en caso de que se detecte algún cambio Botón PULL.
-
Creamos una nueva rama desde develop. En Sourcetree esto se hace en el botón Branches que hay junto a Fetch. Poned un nombre descriptivo del trabajo que se va a realizar en esa rama, para que todos entendamos qué se está haciendo y qué no
-
Nos colocamos en la rama en la que vamos a trabajar (la que acabamos de crear).
-
Programar cosas: En VSCode, abre la terminal en la carpeta del repositorio y ejecuta el comando:
npm run dev
Mientras la terminal siga corriendo con ese comando, cualquier cambio que se haga en la carpeta del repositorio provocará que se recompile el proyecto y actualize la carpeta animabf.
- Para ver los cambios en Foundry, por lo general basta con pulsar f5 dentro del mundo una vez el proyecto haya compilado. Si no, Opciones -> Return to setup y cargar de nuevo el mundo.
-
Cuando tu trabajo esté terminado, o cuando quieras guardar el progreso, haz un Commit en la rama en la que estás. En Sourcetree esto se hace en el botón COMMIT arriba a la izquierda. Al darle te salen Staged files y Unstaged files. Dale a Stage a los archivos que quieras guardar, añade abajo un comentario descriptivo de lo que has hecho y dale a Commit en la esquina inferior derecha.
-
Si no has marcado la casilla de "Push Inmediately..." al hacer el commit, verás que se ilumina el botón de Push. Comprueba que efectivamente estás en la rama en la que tienes que estar, y dale al botón PUSH.
-
Cuando el trabajo en una determinada feature esté terminado por completo, entramos en Git y hacemos un PULL REQUEST desde nuestra rama a develop, y marcamos a algunos de los compañeros como reviewers para que repasen nuestro código antes de aceptarlo. Los que tengáis dudas preguntad por Discord.
-
De vez en cuando, cuando la rama Develop haya tenido bastantes cambios, se hará un MERGE de la rama develop a la rama master. De nuevo, esto mejor que solo se haga con consenso entre varios.
b) Para continuar tu trabajo o el trabajo de otro: Lo mismo que lo anterior pero sin el paso 1 ni 3.