Compare commits

..

165 commits

Author SHA1 Message Date
baec65763d MaJ changelog 2024-10-15 10:15:34 +02:00
Kazhnuz
61259d7858 meta: maj version
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-14 21:43:34 +02:00
Kazhnuz
3593ac1072 fix: correction des fiches
All checks were successful
continuous-integration/drone/push Build is passing
Fixes #272
2024-10-14 21:42:27 +02:00
Kazhnuz
e7e85fd86e feat: premier jet des combats
All checks were successful
continuous-integration/drone/push Build is passing
Fixes #271
2024-10-14 21:18:26 +02:00
Kazhnuz
d411a60fab feat: retour géant/meute
Fixes #270
2024-10-14 21:10:17 +02:00
Kazhnuz
1f98e26db1 fix: style alerte
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-14 20:59:32 +02:00
Kazhnuz
a9719643ce fix: corrections responsives 2024-10-14 20:38:24 +02:00
Kazhnuz
6213904395 feat: ajoute les soins
Fixes #276
2024-10-14 20:28:06 +02:00
Kazhnuz
ba4c5fc0ff fix: ajoute les encaissement complet de blessure
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-14 20:23:10 +02:00
Kazhnuz
e6da071dbe feat: plus d'attaques de blessures
Fixes #273
2024-10-14 20:08:22 +02:00
Kazhnuz
6ebb83a89d feat: modifie les afflictions
Fixes #265
2024-10-14 19:54:55 +02:00
Kazhnuz
e7458bb4ab feat: ajoute les postures de bases
Fixes #274
2024-10-14 19:40:33 +02:00
Kazhnuz
f3fbbaf866 feat: nouvelle multi-attaque
All checks were successful
continuous-integration/drone/push Build is passing
Fixes #275
2024-10-14 19:27:13 +02:00
Kazhnuz
7f10ef70ba feat: ajoute le bonus de dégat 2024-10-14 19:20:59 +02:00
Kazhnuz
4f77e28b3b chore: remove des pages inutiles 2024-10-14 18:52:30 +02:00
Kazhnuz
295cb0ddaf feat: ajoute mention que les jets sont pas tjrs utile
Fixes #269
2024-10-14 18:33:16 +02:00
Kazhnuz
f0b9fd1e72 feat: ajoute robots.txt
Fixes #264
2024-10-14 18:29:44 +02:00
Kazhnuz
2319aec44e meta: maj version
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-12 15:30:45 +02:00
Kazhnuz
0a3dd738d7 fix: amelioration tableaux 2024-10-12 15:29:33 +02:00
Kazhnuz
0544d9412b feat: favicon 2024-10-12 15:24:35 +02:00
Kazhnuz
0b9fc7f16d fix: buttons 2024-10-12 15:10:59 +02:00
Kazhnuz
3b6a2baa76 fix: remise des dés d'actions aux mobs 2024-10-12 15:08:56 +02:00
Kazhnuz
6c3e107676 feat: retablissement des dés d'actions 2024-10-12 15:08:25 +02:00
Kazhnuz
373a49f9ca feat: restoration afflictions 2024-10-12 15:01:49 +02:00
Kazhnuz
6d6709ebb0 improvement: refonte créatures et véhicules 2024-10-12 14:58:08 +02:00
Kazhnuz
4fc4f16bb4 improvement: simplification inventaire 2024-10-12 14:26:02 +02:00
Kazhnuz
fc91d24dc1 fix: bordure sommaire en mode mobile 2024-10-12 13:59:12 +02:00
Kazhnuz
4abe3d6839 feat: ajout logo et version 2024-10-12 13:57:36 +02:00
Kazhnuz
36675ec925 fix: suppression règles spécifiques erratum 2024-10-12 13:40:19 +02:00
Kazhnuz
baba355e5a feat: deplacement plateau vers une section "bonus" 2024-10-12 13:40:08 +02:00
Kazhnuz
9c6171d6a1 fix: restauration réputation 2024-10-12 13:39:47 +02:00
Kazhnuz
c86d2b69ca fix: remet l'exploration 2024-10-12 13:07:55 +02:00
Kazhnuz
94ba9ec705 improvement: simplification combats 2024-10-12 12:55:44 +02:00
Kazhnuz
117ff5b057 improvement: simplification personnages 2024-10-12 12:15:33 +02:00
Kazhnuz
d1ed90d206 improvement: règle de base plus simples 2024-10-12 11:13:30 +02:00
Kazhnuz
4084cf79ed chore: remise page bienveillance 2024-10-12 10:54:07 +02:00
Kazhnuz
106bfc6387 chore: amelioration page d'accueil 2024-10-12 10:52:15 +02:00
Kazhnuz
65fd0a0dd8 chore(engine): switch to eleventy 2024-10-12 10:30:32 +02:00
Kazhnuz
4443bea122 chore: deplacement de tout les fichiers md vers content/ 2024-10-12 09:58:23 +02:00
Kazhnuz
a2dbf3f3c8 fix: correction elipsis
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-19 21:29:07 +01:00
Kazhnuz
4febea92db fix: Correction recherche et page 2023-02-19 21:29:00 +01:00
Kazhnuz
6d338bbacb fix: fix issues with pagination 2023-02-19 21:01:40 +01:00
Kazhnuz Klappsthul
5ce1f42c25 Merge pull request 'Refonte inventaire et objets' (#236) from inventaire into master
Reviewed-on: pelican/pelican-jdr#236
2023-02-18 19:06:26 +01:00
Kazhnuz
5a210a0425 meta: changelog 2023-02-18 19:05:16 +01:00
Kazhnuz
9e8349bb7a feat: ajout element par page configurable 2023-02-18 19:03:59 +01:00
Kazhnuz
af5f2983d3 feat: make table searchable 2023-02-18 16:59:35 +01:00
Kazhnuz
cb1904cdad feat: ajout elementaire tech 2023-02-18 16:39:51 +01:00
Kazhnuz
c1c98180aa feat: portage elements vers tableaux 2023-02-18 16:32:48 +01:00
Kazhnuz
c68ae3d8ce chore: suppression tableau résistence 2023-02-18 11:22:40 +01:00
Kazhnuz
0095fb9224 feat: accessoire en tableau 2023-02-18 11:17:53 +01:00
Kazhnuz
dafd9fe325 fix: correction d'une regression sur le render 2023-02-16 07:59:39 +01:00
Kazhnuz
2ff9638f49 fix: fix the dice table 2023-02-16 07:49:56 +01:00
Kazhnuz
f559e7cd5a fix: fix table style 2023-02-16 07:46:47 +01:00
Kazhnuz
64d93b9ef7 fix: use a button to handle tags 2023-02-16 07:27:21 +01:00
Kazhnuz
f066f064f4 fix: better pagination 2023-02-14 20:33:30 +01:00
Kazhnuz
e99da55f13 fix: smaller text in table 2023-02-13 21:50:11 +01:00
Kazhnuz
d62bbceef9 improvement: separate Table and Renderer 2023-02-13 21:47:02 +01:00
Kazhnuz
f6fcf218d3 feat: ajout des tenues 2023-02-13 21:31:45 +01:00
Kazhnuz
d0f284dc36 improvement: separate md loader & renderer 2023-02-13 21:26:47 +01:00
Kazhnuz
6d360e1026 feat: ajout des jdr de test 2023-02-13 18:34:02 +01:00
Kazhnuz
bab292f357 chore: refonte perce-armure 2023-02-12 20:49:05 +01:00
Kazhnuz
39f5e65e48 feat: outils en tant que liste 2023-02-12 20:41:23 +01:00
Kazhnuz
de0845da11 feat: use categories of current jdr 2023-02-12 11:25:05 +01:00
Kazhnuz
07e8986ed6 chore: split DynTable into classes 2023-02-11 19:46:58 +01:00
Kazhnuz
787146ec6d feat: ajout cartomancia et sonata 2023-02-08 20:46:04 +01:00
Kazhnuz
f8b9a3d272 fix: ajout ObjetsView oublie 2023-02-08 20:45:55 +01:00
Kazhnuz
60e29fbdc0 fix: meilleurs vue article 2023-02-08 20:45:45 +01:00
Kazhnuz
c53b73cb16 fix: config typescript 2023-02-08 20:45:19 +01:00
Kazhnuz
592c80b894 feat: tableau dynamique pour les objets 2023-02-08 20:44:47 +01:00
Kazhnuz
52807890ec feat: ajout tableau dynamiques 2023-02-08 20:42:54 +01:00
Kazhnuz Klappsthul
ce2fdfc08f Merge pull request 'Portage du site sous vuejs' (#232) from vue-remake into master
Reviewed-on: pelican/pelican-jdr#232
2023-02-08 12:45:44 +01:00
Kazhnuz
5b6a32ffed fix: corrections de titre 2023-02-08 12:26:04 +01:00
Kazhnuz
70935ed56d chore: ajout changelog 2023-02-08 12:24:57 +01:00
Kazhnuz
fe7d4fcdfc chore: nettoyage fichiers inutiles 2023-02-08 12:19:37 +01:00
Kazhnuz
c28d86d1f2 fix: correction style markdown 2023-02-08 12:17:42 +01:00
Kazhnuz
9320e0c134 feat: ajout fiches 2023-02-08 12:17:35 +01:00
Kazhnuz
ab15443607 improvement: meilleurs gestion MarkdownFile 2023-02-08 11:49:06 +01:00
Kazhnuz
2a6ba73928 fix: nettoyage règles 2023-02-08 11:09:34 +01:00
Kazhnuz
5374d7267f feat: support variables dans les markdown 2023-02-08 10:43:48 +01:00
Kazhnuz
39f97567d6 feat: ajout support des alert 2023-02-08 01:26:16 +01:00
Kazhnuz
e4d9766b1c feat: sidebar modifiable par les jdrs 2023-02-08 00:40:10 +01:00
Kazhnuz
bce09a78a8 feat: ajout page à propos 2023-02-07 23:34:32 +01:00
Kazhnuz
eaa1da8752 feat: ajout ToC 2023-02-07 23:30:55 +01:00
Kazhnuz
132bf5f060 improvement: style un peu mieux 2023-02-07 22:02:24 +01:00
Kazhnuz
628f5ecc38 feat: add dynamic sidebar 2023-02-04 11:01:06 +01:00
Kazhnuz
56c665eccb feat: affichage sidebar 2023-02-04 10:13:33 +01:00
Kazhnuz
58ca487c69 feat: recuperation de la config 2023-02-04 10:13:22 +01:00
Kazhnuz
85dcd63d45 improvement: correction layout 2023-02-04 10:07:31 +01:00
Kazhnuz
d8ba1895fd fix(RuleView): fix soucis de rafraichissement 2023-02-04 09:17:31 +01:00
Kazhnuz
047fa027fa feat: add global layout 2023-02-03 22:21:16 +01:00
Kazhnuz
2e07fe2831 feat: use custom scss 2023-02-03 21:59:43 +01:00
Kazhnuz
87dbce765e feat: ajout des pages de règles 2023-02-03 21:40:22 +01:00
Kazhnuz
fd731c447d fix(MarkdownFile): utilisation chemin absolu 2023-02-03 21:40:10 +01:00
Kazhnuz
3c067d199f feat: ajout lecture basique fichier markdown 2023-02-03 21:27:30 +01:00
Kazhnuz
785d0a98bb chore: initialisation app vue3 2023-02-03 21:02:03 +01:00
Kazhnuz
be5ce1be9e chore: suppression des anciennes dependances 2023-02-03 20:53:40 +01:00
Kazhnuz
ae9b736ca0 chore: remplacement site static par des pages md 2023-02-03 20:53:02 +01:00
Kazhnuz
89530e061b chore: put all rules in public/ 2023-02-03 20:46:21 +01:00
Kazhnuz
7cc994d342 chore: put assets in the public folder 2023-02-03 20:32:38 +01:00
Kazhnuz
171d7e5621 chore: remove public/dist from .gitignore 2023-02-03 20:30:56 +01:00
Kazhnuz
7216e0e916 fix: better footer
All checks were successful
continuous-integration/drone Build is passing
Fixes #222
2022-12-04 12:23:40 +01:00
Kazhnuz
8826d4acaa fix: corrections mineures
Fixes #218
2022-12-04 12:22:16 +01:00
Kazhnuz
9a35e84f5c fix: ajout page génralités
Fixes #220
2022-12-04 12:20:19 +01:00
Kazhnuz
e1dce3f5fb fix: correction tableau
Fixes #219
2022-12-04 12:13:36 +01:00
Kazhnuz
469aa5b4af fix: meilleur page de fiche de perso
Fixes #217
2022-12-04 11:50:51 +01:00
Kazhnuz
2c7879fbca improvement(style): utilisation de roleplay comme design
All checks were successful
continuous-integration/drone Build is passing
Fixes #215
2022-11-22 23:38:15 +01:00
Kazhnuz
533ef14860 chore(meta): rebrand en Pélican 2022-11-22 23:06:29 +01:00
Kazhnuz
2e76f58e0a chore: update changelog
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 22:42:47 +01:00
Kazhnuz
a624e6650f feat: ajout des placements
Fixes #199
2022-11-22 22:41:25 +01:00
Kazhnuz
68721caaf4 chore: suppression page effet 2022-11-22 22:31:26 +01:00
Kazhnuz
4fb604b8b8 chore: suppressions examples postures/soins 2022-11-22 22:29:54 +01:00
Kazhnuz
d2f8c60a27 chore(affliction): ajout graces et effets dans afflictions
Fixes #216
2022-11-22 22:24:29 +01:00
Kazhnuz
e170c8fe3f chore(afflictions): ajout malédictions aux afflictions 2022-11-22 22:15:38 +01:00
Kazhnuz
5bf4408bdb chore(effets): ajout effets aux afflictions 2022-11-22 22:12:48 +01:00
Kazhnuz
e173821ae8 feat(potions): ajout potion soin moral
Fixes #115
2022-11-22 21:55:07 +01:00
Kazhnuz
ad8906e118 chore(niveaux): ajout nouveaux fonctionnement niveaux changelog
Fixes #205
2022-11-22 21:53:11 +01:00
Kazhnuz
5de45369b0 improvement(niveaux): ajout améliorations de compétence 2022-11-22 21:51:37 +01:00
Kazhnuz
9eafb14061 improvement(niveaux): baisser nombre de palier à 3 2022-11-22 21:33:03 +01:00
Kazhnuz
97c596da02 fix: suppression mention obsolète 2022-11-22 21:28:48 +01:00
Kazhnuz
2626396095 improvement: indication nature capacité gratuite 2022-11-22 21:26:32 +01:00
Kazhnuz
c569eaa699 chore: creation d'une page reputation 2022-11-22 21:17:11 +01:00
Kazhnuz
74eaa57057 chore: suppression page pouvoirs.md 2022-11-22 21:11:48 +01:00
Kazhnuz
04b00dbd65 chore: suppression classe débrouillard 2022-11-22 21:08:22 +01:00
Kazhnuz
27bd2cfc49 chore: déplacement type de pouvoirs dans D100.md 2022-11-22 21:07:50 +01:00
Kazhnuz
e99ad56462 fix: plus d'indication de changelog pour les extensions 2022-11-04 22:20:36 +01:00
Kazhnuz
4995139d42 improvement: suppression extensions
Fixes #210
2022-11-04 22:19:30 +01:00
Kazhnuz
501a5a7b22 feat: ajout autre limitations d'éclat 2022-11-04 22:17:03 +01:00
Kazhnuz
928bebea71 improvement: ajout magie au coeur de rulebook 2022-11-04 22:16:51 +01:00
Kazhnuz
64d8009d79 fix: suppression extension objets magiques 2022-11-04 22:02:08 +01:00
Kazhnuz
05a0cd34a6 feat: ajout disclaimer type de règle 2022-11-04 21:52:53 +01:00
Kazhnuz
728abd3c98 improvement: finalisation refonte équipement
Fixes #208
2022-11-04 21:51:17 +01:00
Kazhnuz
c7e1c88fe5 improvement: suppression mention niveaux 2022-11-04 21:45:48 +01:00
Kazhnuz
1617efe5ee feat: ajout combinaisons effets 2022-11-04 21:41:16 +01:00
Kazhnuz
4ffe938d76 chore: suppression armure morale armures 2022-11-04 21:39:55 +01:00
Kazhnuz
ecfbfed1a4 improvement : correction bonus 2022-11-04 21:37:33 +01:00
Kazhnuz
0cc342d409 chore: ajout des baguettes aux equipements
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-04 21:34:57 +01:00
Kazhnuz
68fe4a0d0a chore: fusion effets technologiques 2022-11-04 21:31:58 +01:00
Kazhnuz
ff3a470d87 chore: separation arme blanche 2022-11-04 21:20:43 +01:00
Kazhnuz
74f46e5f5e chore: fusion effets magiques 2022-11-04 21:18:40 +01:00
Kazhnuz
d51ff0e7ee chore: déplacement équipements modernes 2022-11-04 20:45:03 +01:00
Kazhnuz
dcfbc32944 fix: utilisation d'onglets pour effets et armes 2022-11-04 20:39:09 +01:00
Kazhnuz
692f84e6ee fix: suppression tenue ample 2022-11-04 20:24:15 +01:00
Kazhnuz
75267ca93b chore: fusion équipements médiévaux 2022-11-04 20:24:07 +01:00
Kazhnuz
acf3a887e5 chore: modification equipements erratum 2022-11-04 20:15:40 +01:00
Kazhnuz
3fb5fb743b chore: ajout des armures aux tenues 2022-11-04 20:15:10 +01:00
Kazhnuz
677c8b6eaa chore: preparation à intégrer les armes 2022-11-04 19:45:56 +01:00
Kazhnuz
92688082d8 improvement: refonte des baguettes 2022-11-04 19:32:11 +01:00
Kazhnuz
c259b430c5 feat: suppression des niveaux d'armes
Simplifiera pas mal la gestion des armes
2022-11-04 19:31:07 +01:00
Kazhnuz
487f731c80 feat: ajout effet "amélioré" et "d'exception"
Ces effets remplaceront les niveaux d'armes.
2022-11-04 18:33:36 +01:00
Kazhnuz
fba462db18 feat: refonte des potions
Fixes #207
2022-10-25 16:22:10 +02:00
Kazhnuz
ea68c162c6 improvement: mention plus générique pour renforcement/affaiblissement 2022-10-25 15:53:40 +02:00
Kazhnuz
d691fae214 improvement: simplification postures 2022-10-25 15:52:53 +02:00
Kazhnuz
fe8a39a92d chore: remove unused deps
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-25 12:00:38 +02:00
Kazhnuz
debbc369f9 chore: update deps
Some checks failed
continuous-integration/drone/push Build is failing
2022-10-25 11:44:41 +02:00
Kazhnuz
fc82285cdc fix: nerf Danse avec la Mort
Some checks failed
continuous-integration/drone Build is failing
Fixes #206
2022-10-25 11:05:40 +02:00
Kazhnuz
88a177657f feat: indication que l'éclat est facultatif 2022-10-25 11:05:40 +02:00
Kazhnuz
564cbc5412 improvement(perso): mention que c'est le joueur qui tords le destin 2022-10-25 11:05:40 +02:00
Kazhnuz
d24c0776fc meta: use npm to build
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-26 17:27:21 +01:00
Kazhnuz
bc9a589091 meta: use deploy_host key
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-26 16:21:00 +01:00
Kazhnuz
cbf656cc22 fix: amelioration pipeline
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-26 14:34:21 +01:00
Kazhnuz
473d1def4d fix: update pipeline
Some checks failed
continuous-integration/drone/push Build is failing
2022-03-26 14:12:29 +01:00
Kazhnuz
425c7f6ff2 meta: initial drone pipeline
Some checks failed
continuous-integration/drone/push Build is failing
2022-03-26 13:50:04 +01:00
Kazhnuz
6486d144ab bump des librairies 2022-03-26 13:42:14 +01:00
Kazhnuz
b7367b6bb2 meta: fix a forgotten mention of OGL 2022-03-06 12:41:47 +01:00
Kazhnuz Klappsthul
270e24c3a6 Merge pull request 'Passage de rulebook en basé sur les compétences' (#196) from phosphorus into master
Reviewed-on: jdr/rulebook#196
2022-03-05 14:34:17 +01:00
246 changed files with 6047 additions and 39309 deletions

33
.drone.yml Normal file
View file

@ -0,0 +1,33 @@
kind: pipeline
name: production
when:
event: [ push ]
branch: [ master ]
clone:
git:
image: plugins/git
pull: true
steps:
- name: build
image: node:latest
commands:
- npm install -g gulp
- npm i
- npm run build
- name: deploy
image: drillster/drone-rsync
settings:
hosts:
from_secret: deploy_host
target: /var/www/rulebook.kobold.city
source: _site/*
user:
from_secret: deploy_user
key:
from_secret: deploy_key
when:
branch: master
delete: true

25
.gitignore vendored
View file

@ -1,4 +1,25 @@
dist/
# Generated files
package/generated*
# Ignore installed npm modules
node_modules/
public/
# Ignore build tool output, e.g. code coverage
.nyc_output/
coverage/
# Ignore API documentation
api-docs/
# Ignore folders from source code editors
.vscode
.idea
# Ignore eleventy output when doing manual tests
_site/
package-lock.json
# Ignore test files
.cache
test/stubs-layout-cache/_includes/*.js

View file

@ -5,29 +5,75 @@ Tout les changements notables au projet sont consignés dans ce fichier, afin de
Ce format est basé sur la norme [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## En cours
## Pélican 1.0.0
Cette version contient en plus des modifications de base l'adaptation de celles de la version 2.4.0.
Première version de la refonte de Pélican !
### Modifications générales
### Ajouté
#### Ajoutés
- Ajout des combats de bataille
- Nouvelles règles de multi-coup
- Ajout de nouvelles postures de bases
- [core] Ajout règles de bienveillance
- [core] Ajout X-Card
### Modifiés
- Ajout de faire des blessures sur les haches, et des actions spécials des couteaux
- Ajout du fait d'avoir des dégats bonus quand FOR, etc. > 100
- Utilisation du multi-coup dans les nuées de monstres
## Pélican 0.3.0 (beta 1)
Refonte global du site en Eleventy, et simplification des règles pour n'être plus qu'une base. Adaptation d'une partie du système à celui d'Erratum, et réapplication des dés d'actions.
### Modifiés
- Séparation jet de vigueur et jet de cac
- Remplacement des bonus/malus flat de difficulté par des aventages/désaventages et jet spécialisés
### Supprimés
- Retrait de tout les éléments spécifiques à un JDR en particulier.
## Pélican 0.2.0 (alpha 2)
Refonte global du site en vueJS
### Ajoutés
- [site] Page À propos
- [site] Chargement dynamique d'infos sur les pages
- [core] Ajout des outils
### Modifiés
- [site] Unification de l'interface
- [site] Feuilles de styles simplifiées
- [core] Refonte perce-armure qui touche toute l'attaque, ou divise par deux l'armure. Idem Perce-Defense.
- [core] Refonte armure spéciale, qui devient une armure ignorant le perce-armure, le brise armure, etc.
- [core] Mise en commun armes, outil et boucliers et leurs effets
### Supprimés
- [site] Suppression des systèmes d'onglets
- [core] Suppression du tableau des faiblesses/resistences (sera réimplémenté dans le bestiaire)
## Pélican 0.1.0 (alpha 1)
Rulebook a été renommé en Pélican. Cette version contient en plus des modifications de base l'adaptation de celles de la version 2.4.0.
### Ajoutés
- [core] Ajout règles de bienveillance et X-Card
- [core] Ajout des véhicules et montures (+ combats)
- [core] Ajout des formes géantes et troupes/meutes
- [core] Ajout d'un mode "jeu de plateau"
- [core] Précision sur le fonctionnement des toxines
- [core] Ajout domestication/influence
- [core] Ajout de confusion en tant qu'affliction morale
- [core] Ajout rang de créatures
- [extensions] Ajout de nouvelles armes et équipements modernes et médiévaux
- [extensions] Ajout des effets technologiques
- [extensions] Ajout de plus d'information sur les aberrations et irrégularités.
- [extensions] AJout de la métaphysique
- [core] Ajout de plus d'information sur les aberrations et irrégularités.
- [core] Ajout de la métaphysique
- [core] Ajout des positions
#### Modifiés
### Modifiés
- [meta] Passage de OGL à Creative Commons
- [meta] Format paysage pour les fiches
@ -37,48 +83,20 @@ Cette version contient en plus des modifications de base l'adaptation de celles
- [style] Modification sidebar
- [core] Refonte pour être fondé sur les compétences plus que les stats.
- [core] Unification PE/Affliction mentale en notion de "moral"
- [core] Simplification du système de classe et rangs
- [core] Révision non-lethal
- [core] Simplification du système de classe, rangs et potentiel
- [core] Refonte équipement (suppression des niveaux, refonte non-léthal, ajouts de nouveaux effets et équipements)
- [core] Refonte effets PV (séparation coma/ko) et PM
- [core] Nerf esquive consécutives
- [core] Meilleur nom modificateur de difficulté
- [core] Stat au dessus de 100 n'augmentent plus que de 1 pour 5 les réussite critiques
- [core] Simplification des attitudes en un système d'émotions
- [core] Simplification aggro, effets et stratégie de combat
- [core] Refonte talent en une classe "débrouillard" générique.
- [extensions] Séparation des éléments
- [extensions] Meilleur ordre pour l'anomie
- [core] Refonte créatures
#### Corrigés
### Corrigés
- [meta] Correction liens sources/tout les rulebook
#### Suppression
- [extension] Retrait des baguettes
### Erratum 3
Avec cette version sort la première version adaptée à Rulebook 3 de Erratum, mon JDR de fantasy urbaine. Cette version fait une adaptation aux règles de rulebook 3 et profite des nouvelles possibilités offertes par la nouvelle itérations des règles de bases. Le livre de règle de Erratum a également été simplifié pour ne contenir que les règles de ce dernier.
### Ajoutés
- Ajout règles sur les dieux
- Ajout d'une différenciation entre magies communes et rares
- Ajout des postures alter
### Modifiés
- Adaptation générales aux règles de rulebook
- Amélioration des vertues
- Déplacement dans un site externe du lore
- Division des signes et magies en plusieurs page pour profiter de la place supplémentaire
- Modification des signes pour utiliser le nouveau système de classe
- Rééquilibrage global des signes
- Refonte du verseau pour être basé sur les flux plus que le temps
- Refonte signes doublés
- Revue de la liste des heraults
## [3.0.1] - 2020-11-05
### Modifiés

View file

@ -1,9 +1,9 @@
# Rulebook
# Pélican
Rulebook est un système générique de jeu de rôle basé sur le système D100, ayant pour objectif de créer un système de jeu de rôle simple mais efficace, se basant sur les dés les plus générique dun rôliste. Il ne s'agit cependant que d'une base de système, à partir de laquelle vous pourrez construire des systèmes adaptés à votre univers et vos concepts.
Pélican est un système générique de jeu de rôle basé sur le système D100, ayant pour objectif de créer un système de jeu de rôle simple mais efficace, se basant sur les dés les plus générique dun rôliste. Il ne s'agit cependant que d'une base de système, à partir de laquelle vous pourrez construire des systèmes adaptés à votre univers et vos concepts.
Le système est conçu de manière modulaire, avec plusieurs éléments qui peuvent être choisi ou non suivant la complexité que vous voulez donnez à votre JDR.
Le système pélican à pour objectif de mettre en avant l'imagination et le RP plus que des règles complexes et un gameplay hyper peaufiné. Il vise à être simple à apprendre et à retenir, tout en offrant pas mal de cas de figure et possibilité. Il contient également des recommendation en terme de bienveillance envers les joueurs.
Ce set de règle est fourni par [Kazhnuz](https://kazhnuz.space), avec certaines règles reprise du système de [MDupoignard](https://twitter.com/MDupoignard). Il est distribué sous la [Creative Common BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/), crée par [Wizard of the Coast](https://company.wizards.com/).
Ce set de règle est fourni par [Kazhnuz](https://kazhnuz.space), avec certaines règles reprise du système de [MDupoignard](https://twitter.com/MDupoignard). Il est distribué sous la [Creative Common BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/).
Ce site est généré par [Docsify](https://docsify.now.sh/) et hébergé par [Kobold City](https://kobold.city).
Ce site est généré par [Docsify](https://docsify.now.sh/).

7
_data/fiches.json Normal file
View file

@ -0,0 +1,7 @@
[
{"title":"Fiche de Personnage", "path":"personnage"},
{"title":"Fiche de PNJ", "path":"pnj"},
{"title":"Fiche de Créature", "path":"creature"},
{"title":"Fiche de Suiveur", "path":"suiveur"},
{"title":"Fiche de Véhicule", "path":"vehicule"}
]

4
_data/jdr.json Normal file
View file

@ -0,0 +1,4 @@
{
"nom":"Pélican",
"version":"1.0.0"
}

11
_data/metadata.js Normal file
View file

@ -0,0 +1,11 @@
module.exports = {
title: "Système D100 Pélican",
url: "https://pelicanjdr.kazhnuz.space/",
language: "fr",
description: "Une base de JDR basé sur le système D100",
author: {
name: "Kazhnuz",
email: "kazhnuz@kobold.cafe",
url: "https://kazhnuz.space/"
}
}

View file

@ -0,0 +1,66 @@
<!doctype html>
<html lang="{{ metadata.language }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ title or metadata.title }}</title>
<meta name="description" content="{{ description or metadata.description }}">
{#- Atom and JSON feeds included by default #}
<link rel="alternate" href="/feed/feed.xml" type="application/atom+xml" title="{{ metadata.title }}">
<link rel="alternate" href="/feed/feed.json" type="application/json" title="{{ metadata.title }}">
<link rel="icon" type="image/x-icon" href="/img/favicon.gif">
{#- Uncomment this if youd like folks to know that you used Eleventy to build your site! #}
<meta name="generator" content="{{ eleventy.generator }}">
{%- css %}{% include "public/css/index.css" %}{% endcss %}
<style>{% getBundle "css" %}</style>
</head>
<body>
<svg class="d-none" alt="">
<symbol id="icon-bars" viewBox="0 0 32 32">
<path d="M30 24v3c0 .6-.4 1-1 1h-26c-.6 0-1-.4-1-1v-3c0-.6.4-1 1-1h26c.6 0 1 .4 1 1zM30 15v3c0 .6-.4 1-1 1h-26c-.6 0-1-.4-1-1v-3c0-.6.4-1 1-1h26c.6 0 1 .4 1 1zM30 6v3c0 .6-.4 1-1 1h-26c-.6 0-1-.4-1-1v-3c0-.6.4-1 1-1h26c.6 0 1 .4 1 1z"></path>
</symbol>
</svg>
<a href="#skip" class="visually-hidden">Skip to main content</a>
<nav id="sidebar">
{{ collections.all | eleventyNavigation | eleventyNavigationToHtml({anchorClass: "itemLink",activeAnchorClass: "active",activeListItemClass: "active",activeKey: eleventyNavigation.key, listClass: "nav", listItemClass: "item"}) | safe }}
</nav>
<div class="wrapper">
{% if home == true %}
<hgroup>
<h1><img src="/img/logo.gif" alt="Pélican" width=456></h1>
<p>Version {{ jdr.version }}</p>
</hgroup>
{% else %}
<h1>{{ eleventyNavigation.key }}</h1>
{% endif %}
<aside>
<div id="more-info">
<h2>Sommaire</h2>
{{ content | toc | safe }}
</div>
</aside>
<main id="skip">
<div>
{{ content | safe }}
</div>
</main>
<footer><a href="https://kazhnuz.space/"><img src="/img/kspace.png" alt="" /><span class="visually-hidden">Site créé par Kazhnuz.</span></a> <a href="https://creativecommons.org/licenses/by-sa/4.0/"><img src="/img/cc-by-sa.png" alt="" /><span class="visually-hidden">Tout le contenu de cette page est sous licence Creatve Common Attribution - Partage à l'identique.</span></a></footer>
</div>
<button id="mobile-button" class="menu-button"><svg class="icon icon-bars" alt=""><use xlink:href="#icon-bars"></use></svg> <span class="sr-only">Afficher le menu</span></button>
<script src="/js/mobile-sidebar.js"></script>
</body>
</html>

9
_includes/postslist.njk Normal file
View file

@ -0,0 +1,9 @@
{%- css %}.postlist { counter-reset: start-from {{ (postslistCounter or postslist.length) + 1 }} }{% endcss %}
<ol reversed class="postlist">
{% for post in postslist | reverse %}
<li class="postlist-item{% if post.url == url %} postlist-item-active{% endif %}">
<a href="{{ post.url }}" class="postlist-link">{% if post.data.title %}{{ post.data.title }}{% else %}<code>{{ post.url }}</code>{% endif %}</a>
<time class="postlist-date" datetime="{{ post.date | htmlDateString }}">{{ post.date | readableDate("LLLL yyyy") }}</time>
</li>
{% endfor %}
</ol>

4
_includes/websites.md Normal file
View file

@ -0,0 +1,4 @@
- Réseau
- [Press Garden](https://press.fanstuff.garden)
- <a href="https://piaille.fr/@breezemedia" rel="me">Breeze Media (fedi)</a>
- <a href="https://bsky.app/profile/breezemedia.bsky.social" rel="me">Breeze Media (bsky)</a>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

View file

@ -1,28 +0,0 @@
function customTabs(hook, vm) {
hook.doneEach(function() {
// Invoked each time after the data is fully loaded, no arguments,
$(".contentArea :first-child").addClass("active")
$(".tab :first-child").addClass("active")
$(".tablinks").click(function(){
var idParent = "#" + $(this).parent().parent().attr("id")
var targetString = idParent + " .contentArea ." + $(this).attr("data-target")
//On fait en sorte que seule la classe visée soit active
$(idParent + " .contentArea .tabcontent").removeClass("active")
$(targetString).addClass("active")
// On fait de meme pour le bouton
$(idParent + " .tab button").removeClass("active")
$(this).addClass("active")
console.log(idParent + " .contentArea .tabcontent")
console.log(idParent + " .tab button")
console.log(targetString)
});
});
}
window.$docsify.plugins = [].concat(
customTabs,
(window.$docsify.plugins || [])
);

View file

@ -1,97 +0,0 @@
body {
font-size:1em;
}
.markdown-section {
max-width: 1100px;
}
/* Style the tab */
.tab {
overflow: hidden;
border: 1px solid #ccc;
background-color: #f1f1f1;
}
/* Style the buttons that are used to open the tab content */
.tab button {
background-color: inherit;
float: left;
border: none;
outline: none;
cursor: pointer;
padding: 14px 16px;
transition: 0.3s;
}
/* Change background color of buttons on hover */
.tab button:hover {
background-color: #ddd;
}
/* Create an active/current tablink class */
.tab button.active {
color:#FFF;
background-color: #42B983;
}
/* Style the tab content */
.tabcontent {
display: none;
padding: 6px 12px;
border: 1px solid #ccc;
border-top: none;
}
.tabcontent.active {
display:block;
}
.markdown-section table {
display:table;
width:100%;
table-layout: fixed;
}
.markdown-section th {
height:34px;
}
.markdown-section tr:nth-child(2n) {
background-color:#fff;
}
.sidebar ul li a {
padding:3px;
padding-left:12px;
margin-right:12px;
border-radius:8px;
}
.sidebar ul li a:hover {
text-decoration: none;
background-color:rgba(0,0,0,0.05);
}
.sidebar ul li.active > a {
border-right:0px solid;
background-color:var(--theme-color,#42b983);
color:#fff;
}
.app-nav li {
margin: 0 0.5rem;
}
.app-nav a {
color: inherit;
padding:8px;
padding-left:12px;
padding-right:12px;
border-radius:8px;
}
.app-nav a:hover {
color: inherit;
background-color:rgba(0,0,0,0.05);
}

View file

@ -1,10 +1,16 @@
# Bienveillance
---
layout: layouts/layout.njk
eleventyNavigation:
key: Bienveillance
parent: Pélican-JDR
order: 0
---
Dans un JDR, vos joueur⋅euses mettront parfois beaucoup d'elleux-même, parfois de leur vécu, ou au contraire auront besoin de s'éloigner dudit vécu. Avoir une bienveillance envers les joueur⋅euses est important pour tout MJ, ainsi qu'avoir une bienveillance envers soi-même ! Bien utilisé, le JDR est un formidable outil pour gagner en confiance en soi, à la fois en tant que MJ et que joueur⋅euse.
La règle numéro 1 est que vos joueurs sont des personnes, et que **votre groupe est plus important que le jeu**.
Ce petite document à pour but de donner quelques éléments pouvant être utiles afin de rendre une partie de rulebook plus fun pour tout le monde.
Ce petite document à pour but de donner quelques éléments pouvant être utiles afin de rendre une partie de Pélican plus fun pour tout le monde.
## Émotions et sujets difficiles
@ -26,7 +32,7 @@ De plus, éviter de créer des blocages plus tard. Par exemple, assurez vous de
## No-kill rule
En combinant les deux éléments précédant, vous pouvez ajouter facilement une no-kill rule à Rulebook si le besoin s'en fait sentir pour votre campagne.
En combinant les deux éléments précédant, vous pouvez ajouter facilement une no-kill rule à Pélican si le besoin s'en fait sentir pour votre campagne.
La règle devient simple : les personnages tombant en dessous des 0 PV restent KO, et pas de coma ou de mort sont possibles. Cette règle peut sécuriser les joueur⋅euses si besoin, évitant des risques de mettre dans une situation problématique un⋅e de vos joueur⋅euse si le sujet est difficile pour ellui, et de possible frustration en cas de gros critiques.

49
content/index.md Normal file
View file

@ -0,0 +1,49 @@
---
layout: layouts/layout.njk
eleventyNavigation:
key: Pélican-JDR
order: 0
home: true
---
Pélican est un système générique de jeu de rôle basé sur le système D100, ayant pour objectif de créer un système de jeu de rôle simple mais efficace, se basant sur les dés les plus générique dun rôliste. Il ne s'agit cependant que d'une base de système, à partir de laquelle vous pourrez construire des systèmes adaptés à votre univers et vos concepts.
Le système pélican à pour objectif de mettre en avant l'imagination et le RP plus que des règles complexes et un gameplay hyper peaufiné. Il vise à être simple à apprendre et à retenir, tout en offrant pas mal de cas de figure et possibilité. Il contient également des recommendation en terme de bienveillance envers les joueurs.
Cette page vous donne accès au set de base qui peut être réutilisé pour créer différents JDR.
## Fiches à télécharger
Vous pourrez trouver ici les différentes fiches de Pélican à télécharger. Elles sont disponible au format .odt et .pdf, pour permettre une utilisation à l'informatique ou en impression :
<ul>
{%- for fiche in fiches %}
<li>
<strong>{{ fiche.title }} : </strong>
<a href="/download/fiche-{{ fiche.path }}.pdf" title="Télécharger au format pdf">pdf</a>,
<a href="/download/fiche-{{ fiche.path }}.odt" title="Télécharger au format odt">odt</a>
</li>
{%- endfor %}
</ul>
## JDR utilisant ce système
J'ai réalisé ou en projet quelques JDR qui vont utilisé ce système, ou utilise une ancienne version de ce système. Pour l'instant, uniquement Erratum est disponible.
- [Erratum](https://erratum.kazhnuz.space/) - JDR de fantasy urbaine, basé sur une ancienne version de ce système.
- **Radiant Skies** - JDR de Light SF anthro, qui utilisera un système de classe fondé sur les compétences.
- **Cartomancia** - JDR rogue-lite, ou vos perso meurent pour évoluer, et change d'espèce à chaque résurrection.
- **Hackerfrost** - JDR cyberpunk avec ambiance "hacker"/"libre" se passant dans des bases antarctique.
- **Solarcrowd** - JDR post-apo d'inspiration solarpunk où vous luttez contre l'oppression dans une communauté unis.
- **Sonic Ring World** - Projet de fan-JDR Sonic, inspiré des différents éléments du canon actuel.
## Crédit et licence
Ce set de règle est fourni par [Kazhnuz](https://kazhnuz.space). Il est distribué sous la [Creative Common BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/).
Des éléments sont repris des systèmes suivants :
- Inspiration globale du système [BRP](https://www.chaosium.com/content/FreePDFs/BRP/BRP%20SRD%201.0%20Fr.pdf) (Basic Roleplaying)
- Éléments de JDR repris des systèmes de mes potes mdupoignard, Alexandre, Samuel, etc.
- Site réalisé sous Eleventy.
- Favicon par [Jerom](https://opengameart.org/users/jerom) et [PriorBlue](https://opengameart.org/users/priorblue), du set [Recolor all the items](https://opengameart.org/content/recolor-all-the-items).

View file

@ -0,0 +1,80 @@
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: Afflictions et effets
order: 6
---
Différents effets peuvent également s'appliquer sur un personnages, appliquant des effets sur lui jusqu'à ce qu'il disparaissent. Certains de ces types d'effets peuvent s'obtenir par des jets aléatoires :
- Le **jet de pestilence** provoque des afflictions physiques
- Le **jet de panique** provoque des afflictions morales
## Effets basiques
Ces effets disparaissent généralement rapidement, au maximum à la fin d'un combat, mais la plupars du temps ne durent que quelques tours.
| | |
|:-:|:-:|
| **Turboactivité**<br />Agis deux fois par tour | **Hypoactivité**<br />Jette 1D4, si fait 4, ne peut pas agir. |
| **Toujours premier**<br />Agis en premier | **Toujours dernier**<br />Agis en dernier |
| **Dépassement**<br />Agit avant le joueur juste avant | **Dépassé**<br />Agit après le joueur juste après |
| **Bis Repetita**<br />Le perso doit répéter la même action que le tour précédant | **Non Repetita**<br />Ne peut pas faire 2x la même action. |
| **Hyperchargement**<br />Augmente de moitié les dégâts (physique/special/moral) reçus comme donné. | **Chateaudepierre**<br />Affaibli de moitié les dégâts (physique/special/moral) reçus comme donné |
## Afflictions
Les afflictions sont des statuts de personnages qui ont la particularité de continuer même après le combat. Ces statut ont également besoin d'être soigné avec des soins particulier, où en profitant des soins d'une auberge. Elles sont divisées en deux types : physiques et morales. Les afflictions physiques sont des maux du corps, tandis que les afflictions morales sont des maux de l'esprit.
Certaines afflictions ont une variante "grave". Certaines capacités provoquant les afflictions les limite également dans le temps.
### Afflictions physiques
Pour être resistée lorsqu'elle est infligée, une affliction physique demande un jet de CON/2.
<div class="table-auto">
| id| Affliction | Effet |
|:-:|:----------:|:------|
| 2 | **Poison** | Perd 2 PV/tour (si grave, tout les tours le poison fait 1 PV/tour en plus) |
| 3 | **Aveuglé** | Tout jet de PER voit sa statistique divisé par 2 (x0 si grave/Cécité) |
| 4 | **Sommeil** | Ne peut pas agir. Peut se réveiller si attaqué ou grand bruit, ou avec un jet de VOL/2 chaque tour. |
| 5 | **Épuisement** | Tout les tours, -5% HAB et CON (si grave, -10% par tour) |
| 6 | **Paralysie** | Le personnage à 1 chance sur 4 de ne pas pouvoir agir chaque tour. (si grave, 1/2) |
| 7 | **Silence** | Ne peut plus faire d'action demandant la parole (magie, discussion orale, etc). |
| 8 | **Faiblesse** | Le personnage fait le minimum possible à ses dés d'actions |
</div>
Lors d'un **jet de pestilence**, le personnage jette un *dé 8* et prend dans le tableau le résultat du dés. S'il fait 1, rien ne se passe, s'il fait 8, il reçoit l'effet stun. Il peut se produire suite à une capacité ou si votre personnage
À ces afflictions on peut ajouter techniquement les états de morts et de KO.
### Afflictions morales
Pour être resistée lorsqu'elle est infligée, une affliction morale demande un jet de SAG/2. Si jet de panique à cause de manque de PM, pas de possibilité de resister.
<div class="table-auto">
| id| Affliction | Effet |
|:-:|:----------:|:------|
| | **Amour** | Ne peut obéïr qu'à la personne dont le perso est amoureux, avec +50% si allié, -20% si ennemi avec. |
| 2 | **Terreur** | Perd 2 PM/tour (si grave, tout les deux tours la terreur fait 1 de PV/tour en plus) |
| 3 | **Bersek** | -50 % pour esquiver ou encaisser les attaques physiques comme morales, où pour décider de se mettre à labris. (ne le fait plus si grave) |
| 4 | **Cassandre** | -1D4 PM à toutes les personnes autour par tour. (2D4 si grave) |
| 5 | **Egoïsme** | Jette 1D4, si 2 ou 4, ne peut pas aider ses alliés. (ne le fait plus si grave) |
| 6 | **Confusion** | Jette 1D4. Si 2 ou 4, attaque un de ses alliés au hasard. |
| 7 | **Méfiance** | Le personnage ne se laisse plus soigner ou aider. |
| 8 | **Inoffensif** | Ne peut plus attaquer les adversaires. |
</div>
Lors d'un **jet de panique**, le personnage jette un *dé 8* et prend dans le tableau le résultat du dés. S'il fait 1, rien ne se passe. Si le jet de panique est produit lorsque le personnage a atteint -100 % des PM max, au lieu de tomber stun, il tombe dans les pommes.
### Toxines
Les toxines sont les substances infligeant des afflictions. Ils peuvent exister sous deux formes :
- **Toxines classiques** : Inflige un certain nombre de tour l'affliction concernée quand elle est injectée/absorbée par un personnage.
- **Poisons gazeux** : Inflige l'effet de l'affliction tant qu'il est présent. Son effet dure un certain nombre de tour (généralement 3) après avoir été dissipé, sauf soin d'affliction.

View file

@ -1,6 +1,6 @@
# Jeu de plateau
Rulebook est un JDR plutôt orienté "pen and paper", mais il peut être possible de préférer jouer certaines parties avec une orientation plus "jeu de figurine" le but de cette page est de fournir des règles simples sur comment faire une partie sur un plateau.
Pélican est un JDR plutôt orienté "pen and paper", mais il peut être possible de préférer jouer certaines parties avec une orientation plus "jeu de figurine" le but de cette page est de fournir des règles simples sur comment faire une partie sur un plateau.
Ce système peut être jouer avec plusieurs types de quadrillage, mais a été réfléchi surtout avec un système de case carrée.

165
content/rules/combat.md Normal file
View file

@ -0,0 +1,165 @@
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: Système de combat
order: 2
---
Le système de combat de Pélican à pour but d'être une base de système simple, sur laquelle la complexité s'ajoute par les compétences et les outils utilisées.
Le système vise à être flexible, avec peu d'interactions de base.
## Début et fin du combat
Lorsque le combat commence, tout les personnages présent durant le combat font un *jet d'initiative* pour connaître leur place dans le combat, en utilisant leur statistique d'HAB. L'organisation des tours des personnages est fait avec une [comparaison](/rules/#confrontation-et-classements) des résultats. *Aucune compétence n'agit sur le jet d'initiative*, mais certains traits peuvent le faire, ainsi que des effets tels que toujours premiers.
Les personnages ayant eu une réussite critique ont le droit à une action supplémentaire dans un tour 0 avant le premier tour. Les personnages ayant eu un échec critique ne peuvent jouer qu'à partir du deuxième tour.
<div class="well">
**Notes :** En cas d'attaque surprise, le groupe ayant eut l'aventage reçoit un tour supplémentaire avant que l'autre puisse attaquer. Pour effectuer une attaque surprise, il faut faire une confrontation de DIS vs PER pour le groupe tentant l'attaque surprise, et que in-RP l'autre groupe ne l'ai pas déjà vu.
</div>
Le combat se termine quand les ennemis n'ont plus de raison de se battre, ou n'en sont plus capable pour une raison ou une autre.
## Tours et actions
Le tour commence au jeu du premier joueur du tour et se termine à la fin de celui du dernier joueur. Le décompte des tours est effectué par le MJ, et peut affecté les différents effets pouvant se produire en combat.
Pour les effets durant plusieurs tours, certains sont compté au début du tour, d'autre à la fin, d'autres à celui des personnages, suivant les catégories suivantes :
- Tout les décomptent globaux, liés à tout les personnages et le combat dans son entiereté (countdown avant qu'un personnage arrive, décompte du nombre de tour, malédiction placée par un élément hors du combat) se décomptent.
- Tout les effets lié à un seul personnage où à un sort se décomptent au début du tour du personnage (poison, cooldown d'une capacité). Il y a une seule exception à cela : les déplacement, comme vous le verrez plus bas.
- Les "effets d'environnement" (tirs perdu d'une armée autour, pluie aléatoire de boule de feu), s'effectuent à la fin du tour.
### Actions d'un personnage
Lors d'un tour, chaque personnage peut faire 1 ou plusieurs des trois actions suivantes :
- Un *déplacement* (pour changer de position après s'être mis à découvert, attaquer un ennemi qui n'est pas immédiatement devant soi, etc) avant ou après son action. Certaines capacités consommes un déplacement en plus de l'action (qu'elle soit avant ou après le tour). Le déplacement ne se regénèrent pas au début du tour du personnage, mais de celui global ! Cela veut dire que si vous désirez réserver votre déplacement pour une action qui se passerait hors tour, jouer en dernier peut devenir aventageux. Le déplacement peut aussi servir à *changer de posture*.
- Une *action*. En règle générale : tout sort, attaque, capacité non-passif ou récupération/changement d'équipement présent dans le sac (recharger son arme, changer d'épée) consomme une action, qui représente ce que le personnage peut faire à son tour. Toute action simple et courte avec un objet déjà en main (boire une potion, retirer un gants, mettre ses lunettes de soleil en tournant le dos à une explosion) pourra être fait en plus de l'action.
## Attaquer
Pour faire une attaque, il faut faire un jet qui va déterminer si l'attaque réussie, et un jet d'un dés d'action pour le nombre de dégats qu'il fait.
L'attaque peut se faire avec les jets suivants :
- Jet de **FOR** (+ compétence) pour les armes au coprs à corps (épée, etc) + un dé de CaC
- Jet de **PER** (+ compétence) pour les armes à distances (arc, etc) + un dé de jet
- Jet de **CHA** (+ compétence) pour les attaques morales (faire peur, etc) + un dé de mental
Il est possible d'ajouter d'autres jet pour d'autres types d'armes, par exemple des jets de **VOL** et dé de mental ou de jet pour de la magie, etc.
Les dégats de l'attaque sont alors calculé de la manière suivante : *résultat du dé d'action* (Généralement x2 si critique) + nombre de dégat que fait l'arme du personnage + tout bonus qui pourrait arrivé. Le dé d'action gagne également +1 dégats par points au dessus de 100 de son pourcentage de réussite de jet.
Si l'attaque fait des dégats, alors l'arme pourra également potentiellement causer des *blessures* faisant des dégats continu au personnage.
### Attaques spéciales
Différents effets peuvent s'appliquer aux attaques et affecter les personnages différemment :
- L'effets **perce-armure** font que les dégâts vont traverser l'armure, et ne pourront être protéger par elle. Une attaque est *semi perce-armure* si elle divise par deux l'armure.
- Les dégâts **perce-défense** font que les dégâts vont traverser la défense, et ne pourront être protéger par le jet de vigueur et le bouclier. Une attaque est *semi perce-défense* si elle divise par deux le jet de vigueur et bouclier.
- Les dégâts **brise-armure** font perdre un points d'armure tout les six dégâts (en priorité sur le bouclier s'il est utilisé). Les points d'armure spéciale ne sont pas touché.
- Les dégats de **chute** sont à 1D12, lancé le nombre de fois correspondant au nombre d'étage de la chute. Ils sont brises-armures et perce-armure.
- Les dégats d'**explosions** font des dégats fixes suivant la liste des dés (4, 8, 10, 12, 20) et sont perce armure *ET* à moitié perce-défense.
### Multi-attaque
Les multi-attaques ont une façon de fonctionner différente des attaques normales. Elles sont particulièrement bonne contre les ennemis basé sur l'esquive ou sur le nombre de PV, et moins efficace sur les ennemis résistants.
- En plus des jets de base de son attaque, le personnage fait un *jet de nombre d'attaque* (déterminé par la compétence permettant le multi-attaque).
- Le critique rajoutera plus d'attaque plutôt que de doubler les dégats.
- L'encaissement fait aussi un seul jet, puis appliquera l'encaissement sur chaque attaque.
- L'esquive fait cependant autant de jet que d'attaque pour esquiver, avec un bonus dégressif de 10% par attaque.
## Encaisser et esquiver
Il y a deux manière de réduire les dégats d'une attaque (hors compétence spécifiques) : l'encaissement et l'esquive.
- L'encaissement utilise un jet de CON (VOL pour les attaque mental, REL pour celles sociales) pour réussir, et permet de réduire les dégats d'un jet de vigueur ou mental, auquel peut s'ajouter les boucliers. Le dé d'action gagne également +1 dégats par points au dessus de 100 de son pourcentage de réussite du jet.
- L'esquive fait une confrontation d'HAB face à l'attaque ennemie pour éviter entièrement l'attaque. Elle ne marche que sur les attaques physiques et diminue de 10% par esquive dans un même tour.
En cas d'échec critique, les effets de l'attaque de l'ennemi sont doublés.
<div class="well">
**Note :** Un encaissement complet élimine aussi les blessures.
</div>
## Soigner
Il existe plusieurs moyens de soigner les autres personnages, ce qui passera plus par des compétences de classes. Il peut exister plusieurs grands types de soins : ceux qui soignent des *blessures*, ceux qui soignent des PV/PM et ceux qui soignent des afflictions.
Pour les soins de PV/PM, il peut exister certains types de soins :
- Faire faire au soigné un dé de vigueur
- Soigner à partir des niveaux de réussites
- Soigner à partir d'un dé en particulier (le dés de mental du soigneur par exemple, ou un fixé par la compétence)
## Placement
Un combat ou chaque groupe est bien "rangé" peut se diviser principalement en deux groupe, chacun composé de deux ligne :
- La ligne frontale est celle le plus proche de l'autre groupe
- L'arrière ligne est plus éloignée.
Ces lignes sont également présentent dans d'autre cas, si les ennemis entoures les héros, ou l'inverse, par exemple (avec des spécificités).
Dans ce genre de disposition, une attaque au corps à corps ne pourra que toucher la front-ligne, mais l'arrière-ligne ne pourra pas faire d'attaque au corps à corps sur les ennemis. Changer de ligne *coute un déplacement*.
### Attaque et défense d'opportunité
Ce système permet certaines *actions d'opportunité* :
- Si un ennemi tente de traverser la ligne pour aller attaquer quelqu'un de l'arrière ligne au cac, des membres de la ligne frontale pourront avoir une *attaque d'opportunité* ou une *défense d'opportunité* pour protéger leurs collègues.
- De même, certains tirs (non en cloche) pourront provoquer des défense d'opportunité de la ligne frontale.
### Placement plus libre
Lors de combat plus "libre", ou les ennemis peuvent bien se disperser, il est possible d'avoir un placement libre, et d'utiliser du coup des distances en mettre pour déterminer les placement, ou un plateau de figurine.
## Postures de combat
Les postures de combats sont des postures qui permettent au personnage de modifier comment il va fonctionner. Changer de posture prend un déplacement, et reste jusqu'à ce qu'il soit changé à nouveau.
| Posture | |
|:-------:|:---|
| **Posture d'aide** | L'effet des soin est augmenter par les niveaux de réussite divisé par deux, et le perso à +15% pour aider d'autres personnages. Le personnage à -20% pour faire des actions offensive action offensive. |
| **Posture d'attaque** | utilisateur fait toujours max dégât du dé utilisé pour attaquer (cac, mental ou jet). Il ne peut cependant plus se défendre et à un malus de 10% pour les actions non-aggressive. |
| **Posture de protection** | Le personnage gagne en encaissement en plus du jet de vigueur/mental les niveaux de réussite divisés par deux. Le personnage gagne également 15% pour esquiver et perd 20% pour toucher les ennemis. |
| **Posture focus** | Gagne un jet d'aventage pour réussir les effets secondaire de ses actions, mais un jet de désaventage pour y résister. |
## Confrontations sociales
<div class="well warning">
**Attention:** Dans ce type de combat, les soins ne fonctionnent pas, hors exception.
</div>
Certains types de combats auront comme objectif non pas de vaincre votre adversaire en lui-même, mais de prouver à un tierce parti que vous avez raison face à lui, où que vous le dépassez sur un point quelconque.
Dans ce cas là, chaque quand aura un certain nombre de points de confiance (fonctionnant comme des PE), et pourront utiliser diverses techniques pour faire baisser les points de PE de l'adversaire, où jouer de leur relationnel pour faire monter les leurs.
Les attaques peuvent alors aussi être faites sur les différentes statistiques mentale ou sociales pour faire des dégats de réputations.
## Combat de bataille
Une bataille est un combat où l'équipe fait partie d'un combat bien plus grand. Il s'agit souvent d'un combat d'endurence, où le MJ décide de comment se produire le combat global tout autour. Ici, ces règles permettent de décider un peu comment la bataille se produit du côté des personnages.
Le principe de ce combat est de gérer le nombre d'ennemis qui apparait et arrive dans la zone de combat concernant les personnages. Ce qui affecte cela est à quel point les personnages sont **dans** la bataille, notamment à quel point il s'y font remarquer. Cela est géré par un *score de visibilité*.
Chaque tour, s'il y a de la place pour l'arrivée d'ennemi (par défaut, on peut caper à nombre de joueur + 50%, à adapter suivant la force des ennemis), un jet sera fait sur le score de visibilité pour déterminer leur arrivée. Pour chaque ennemis en moins que els héros, ce score est augmenté de +10. Ce score augmente également à chaque fois que les personnage font un exploit visible, une attaque puissante, etc.
Pour baisser ce score, il y a plusieurs moyens :
- Utiliser des compétences spécifiques ou de baisse d'aggro
- Faire des jets de discretions pour être discrets (pour détourner vers les autres combattants alliés)
- S'éloigner du coeur des combats

View file

@ -1,6 +1,12 @@
# Exploration et déplacement
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: Exploration et déplacement
order: 1
---
Rulebook est un JDR avant tout "papier et crayon", qui n'est lié à aucun système de plateau et/ou de figurine. Cela rend la représentation des trajets plus abstrait, et nécessite d'avoir une définition plus simple des distances. Nous allons ici expliquer les différentes règles
Pélican est un JDR avant tout "papier et crayon", qui n'est lié à aucun système de plateau et/ou de figurine. Cela rend la représentation des trajets plus abstrait, et nécessite d'avoir une définition plus simple des distances. Nous allons ici expliquer les différentes règles
Dans tout les cas présentés ci-dessous, il peut être intéressant d'avoir une carte du lieu.
@ -21,12 +27,10 @@ Les PNJ peuvent se déplacer de pièce en pièce.
En intérieur, les pièges peuvent être dévastateur ! Les pièges peuvent être de plusieurs types :
- Jonctions (porte, séparation entre deux couloirs) : le passage par cette porte/jonction tant que le piège est actif provoquera son déclenchement
- Pièce (dans un couloir, traverser le couloir compte comme entrer dans la pièce) : toute personne entrant dans la piège tant qu'il est actif sera touché.
- Éléments de pièce (meuble, objet) : interagir physiquement avec l'élément déclenchera le piège.
Ils peuvent être également de plusieurs types, chacun se désamorçant avec une statistique différente : mécaniques (HAB), technologique (INT) ou "surnaturelle" (SAG) (si présent dans le JDR). Tous se repère à la perception, avec des bonus et malus suivant la difficulté (Normal, Complexe, Ardu, Très Difficile et Hardcore).
Ils peuvent être également de plusieurs types, chacun se désamorçant avec une statistique différente : mécaniques (HAB), technologique (INT) ou "surnaturelle" (SAG) (si présent dans le JDR). Tous se repère à la perception, avec des bonus et malus suivant la difficulté, via des aventages/désaventages.
La détection de piège demande une compétence spécifique.
@ -40,31 +44,37 @@ Certains endroits (telle qu'une ville) peuvent être constitué de plusieurs pla
## Grands espaces
Les grands espaces représentent tout ce qui nécessite un à plusieurs jour pour se déplacer. Les grands espaces sont constitué de plusieurs terres (forêts, lac, etc), chacun avec des événements aléatoire (+ des événements scénaristique). Ces terres étant plus vaste et les trajets plus long, chaque déplacement de lieu en lieu prendra 1 vivre par personnage présent. Des malus de faim peut se produire si les personnages n'ont pas assez de nourriture.
Les grands espaces représentent tout ce qui nécessite un à plusieurs jour pour se déplacer. Les grands espaces sont constitué de plusieurs terres (forêts, lac, etc), chacun avec des événements aléatoire (+ des événements scénaristique). Ces terres étant plus vaste et les trajets plus long, chaque déplacement de lieu en lieu prendra 1 vivre par personnage présent. Si les personnages n'ont pas assez pour se nourir, ils ont des malus de faim : -30% à toutes les statistiques.
Heureusement, il est bien plus simple de fouiller dans les grands espaces, mais si cela peut produire un événement aléatoire pour tout le groupe.
Heureusement, il est bien plus simple de fouiller dans les grands espaces, même si cela peut produire un événement aléatoire pour tout le groupe.
## Fouille et recherche d'objet.
Le jet de fouille est un jet qui se fait avec un jet d'un D100. Les différents objets trouvables sont divisé en catégorie (commun, semi-rare, rare, exceptionnel), dont les fourchette peuvent varier suivant les lieux. Certains objets peuvent être présents en quantité limitée. Faire un échec critique lors d'un jet de fouille produit en plus un effet négatif au choix du MJ en plus du résultat de la case.
Le jet de fouille est un jet qui se fait avec un jet d'un D12. Les différents objets trouvables sont divisé en catégorie (commun, semi-rare, rare, exceptionnel), dont les fourchette peuvent varier suivant les lieux. Certains objets peuvent être présents en quantité limitée. Faire un échec critique lors d'un jet de fouille produit en plus un effet négatif au choix du MJ en plus du résultat de la case. Il faut d'abord réussir un jet de PER pour pouvoir fouiller.
Il est possible, dans certains lieu, de chercher de l'argent au lieu de chercher des objets. Chaque case du tableau doit alors avoir un équivalent financier.
Il est possible, dans certains lieu, de chercher de l'argent au lieu de chercher des objets. Chaque case du tableau doit alors avoir un équivalent financier.
Un exemple de tableau de loot (avec les valeurs par défaut en règle générale) serait le suivant :
<div class="table-auto">
| Catégorie | Dés | Loot |
|:---------:|:---:|:----:|
| Rien | 100-91 | |
| Commun | 90-56 | Graines de feu, vivre, 50$ |
| Semi-rare | 55-31 | potion de soin, parchemin de protection, 150$ |
| Rare | 30-11 | Hache, Armure, 300$ |
| Exceptionnel | 10-1 | Épée vorpale de feu (2), Bouclier de glace (1), 700$ |
| Fumble | 12 | Les personnagent trouve quelques chose de déplaisant ou rien |
| Commun | 11-7 | vivre, un peu d'argent |
| Semi-rare | 6-4 | des objets réutilisables, de l'argent |
| Rare | 3-2 | des armes ou des armures, pas mal d'argent |
| Exceptionnel | 1 | Un objet unique (genre arme améliorée puissante), ou une très grosse somme d'argent (genre level partie) |
</div>
Suivant les lieux, les fouilles fonctionnent différemment, comme résumé par ce tableau :
<div class="table-auto">
| Lieu | Fonctionnement de la fouille |
|:----:|:-----------------------------|
| Pièce | Un jet de fouille par joueur. Introduit dans l'ordre prévu par le MJ les objets présent dans la pièce puis produit le jet de fouille prévu sur le lieu entier. |
| Réserve (pièce) | Un jet de fouille par personnage, les jet de fouilles sont + spécialisé mais ont plus de contenu |
| Places | Un jet de fouille par personnage, produit le jet de fouille prévu sur la place. |
| Pièce | Un jet de fouille par joueur. Introduit dans l'ordre prévu par le MJ les objets présent dans la pièce pour les jets réussies, puis produit le jet de fouille prévu sur le lieu entier. |
| Réserve (pièce) | Un jet de fouille par personnage, les jet de fouilles sont + spécialisé mais ont plus de contenu. De plus, les joueurs reçoivent un aventage si la pièce est riche en contenu. |
| Places | Un à trois jet de fouille par personnage, produit le jet de fouille prévu sur la place. |
| Terres (dans des grands espaces) | Un jet de fouille par personnage. Chaque résultat contient également un jet de quantité. La présence de joueur qui fouillent produit un jet dévénement aléatoire |
</div>

96
content/rules/index.md Normal file
View file

@ -0,0 +1,96 @@
---
layout: layouts/layout.njk
eleventyNavigation:
key: Système de jeu
order: 0
---
Le jeu de rôle Pélican est un système générique fondée sur les notions d'action et de compétence. le coeur du jeu est que chaque action est déterminé par un pourcentage de réussite, auquel est comparé le résultat d'un tir de D100. Ce système a été choisi pour son aspect relativement intuitif.
Les dés utilisé sont les dés suivants : Le **D4**, le **D6**, le **D8**, le **D12**, le **D20** et le **D100**
## Qu'est-ce qu'un personnage peut faire ?
Les personnages ont un certains nombres de capacités et de chose qu'ils peuvent faire, passivent ou activement. On peut séparé cela en deux grands types :
- Les **actions** sont tout ce qu'un personnage peut faire *hors de la nécessité de posséder un pouvoir particulier*. Par exemple, si "lancer une boule de feu" (sauf si l'univers dit que tout le monde peut faire ça) nécessitera généralement un pouvoir spécifique, tenter de graver une rune, allumer un ordinateur ou d'effectuer un ballet pourra être tenté par tous.
- Les **pouvoirs** sont à contrario tout ce qu'un personnage peut faire, et qui nécessité d'être après pour être ne serait-ce que tenté. On peut voir ça comme les sorts d'un RPG, par exemple. Ils peuvent être actif ou passif, ou se situer quelque part entre les deux. Ils ont généralement des règles écrites plus ou moins spécifiques à un JDR
### Les types de pouvoirs
Les pouvoirs sont divisé en trois types :
- Les **capacités actives**, qui s'activent une à la fois en consommant une action.
- Les **capacités passives**, qui s'activent passivement (sous conditions ou non), et peuvent se combiner.
- Les **postures** qui sont des compétences passives nécessitant une activation, et durent jusqu'à leur remplacement par une autre posture. Changer de posture ne consomme pas d'action mais peut n'être fait qu'à son tour.
Certains jdr peuvent imaginer d'autres types de capacités, tels que des capacités ajoutant des effets à une attaque. Ils peuvent être lié à un système de classe, ou spécifiques à un personnage.
## Effectuer une action
Pour effectuer une action, le joueur additionne deux variables pour obtenir sa capacité à réussir l'action :
- L'une des *dix statistiques* du jeu (force, constitution, etc), allant de 0 à 80 si le personnage n'a pas eut de bonus
- L'une de ses compétences (natation, escrime, etc), allant de 0 à 70, et étant généralement plus facile à monter
Les deux ensemble donne alors le *pourcentage de réussite* (d'autres pouvoirs peuvent l'augmenter ou le diminuer). Le joueur jette ensuite un D100, et le compare à cette statistique, l'action étant réussie si le résultat du dé est **inférieur ou égal à ce pourcentage de réussite**.
Il est à noter qu'il n'est pas toujours important de faire un jet, et que parfois il est mieux de gérer en RP ce qu'il se passe.
> **Attention :** Le 00 + 0 du D100 correspondent à un 100, soit le pire échec possible.
### Réussite et échec critique
Il existe en plus de cela une troisième statistique qui peut affecter le jeu, la *pression*. La pression donne le pourcentage de réussite ET d'échec critique du personnage. Les échec et réussite sont alors calculé assez simplement :
- Si le résultat du dé est *inférieur ou égal* à la pression, c'est alors une réussite critique (1 à 5 pour 5 de pression, par exemple)
- Si le résultat du dé est *strictement supérieur* à 100-la pression, c'est alors un *échec critique* (96 à 100 pour 5 de pression, par exemple)
Le résultat *in-RP* d'un échec ou d'une réussite critique est à la discretion du MJ, et peut avoir des conséquences imprévues (c'est plus rigolo).
<div class="well">
**Note :** le minimum de pression est 1, sauf compétence particulière.
</div>
### Niveaux de réussite
Pour déterminer *à quel point* laction est réussi existe aussi un **niveau de réussite** qui correspond au nombre de dizaine du pourcentage de réussite auquel on soustrait le dé jeté. Par exemple :
| | E1 | E2 | E3 | E4 | E5 | E6 |
|-----------------|:---:|:-----:|:-----:|:---:|:-----:|:-------:|
| **% réussite** | 40 | 80 | 75 | 75 | 120 | -25 |
| **Résultat** | 51 | 34 | 74 | 78 | 22 | 90 |
| **Niv reussite**| *-1*| **5** | **0** | *0* | **10**| **-11** |
Une réussite et un échec critique *double toujours* les niveaux de réussite, et les transforme en niveau d'échec pour un échec critique, et en niveau de réussite pour une réussite critique. Par exemple, si vous avez un total de 150 de stat et faite un échec critique, vous aurez 12 niveau d'échec.
## Modificateurs de difficultés.
Les modificateurs de difficultés sont des bonus s'appliquant directement sur le pourcentage de chance de réussir, permettant de plus facilement modéliser la difficulté d'une action.
Le maitre du jeu peut modifier la difficulté d'une action de la manière suivante :
- Une action difficile à faire si on a pas de compétence peut diviser la statistique par deux si le personnage n'a pas la compétence requise (voir diviser la stat par deux tout court).
- Rajouter un aventage/désaventage à la manière de D&D : Faire faire le jet de dé deux fois, et prendre le meilleurs/pire résultat suivant les cas.
- Faire qu'une action nécessite une réussite critique pour être réussie, ou n'est raté que sur un échec critique, pour les actions quasi impossible ou inratable.
## Confrontation et classements
<div class="well">
**Note :** En cas dégalité du nombre de réussite, sil y a vraiment un besoin de déterminer un gagnant et un perdant, le joueur avec lunité la plus faible est gagnant. Si jamais il y a tout de même égalité, on rejette un d100, et le plus petit score gagne.
</div>
Lorsque deux personnages font des actions qui sopposent, ils font **une confrontation de dés**. Pour savoir qui lemporte, on calcule le niveau de réussite de chaque action, et on compare celui qui réussi le mieux laction. Par exemple, si un perso P1 fait un jet de réussite à 2 niveaux de réussite, et un adversaire à 1, cest P1 qui gagne.
Pour effectuer un **classement** entre plusieurs joueurs, on fait léquivalent dune confrontation entre tous les joueurs. Tous les joueurs jettent un dé et font un calcul de niveau de réussite par rapport à la statistique concernée, et on classe les joueurs par niveau de réussite, celui en ayant le plus étant premier, et le moins étant dernier.
En combat, les confrontations sont utilisé pour calculer les esquives.
## Autres dés
D'autres dés peuvent utilisé dans le jeu de rôle, pour symboliser les éléments suivants :
- Les chances que quelque chose se produisent (notamment par des jets d'afflictions, de malédiction, etc)
- Les effets de certaines compétences…

188
content/rules/inventaire.md Normal file
View file

@ -0,0 +1,188 @@
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: Inventaire et équipement
order: 3
---
Vos personnages peuvent avoir un certains nombres d'objets, qui seront utilisé dans certains cas, notamment en tant qu'équipement. Les types d'objets que vous pouvez avoir sont les suivants :
- Les armes, qui vous permettent d'attaquer et faire divers effets
- Les boucliers, qui vous permettent de vous défendre
- Les tenues et armures, que vos personnages mettent et permettent de plus ou moins se défendre
- Les accessoires faisant divers effets
- Les objets que vous pouvez utiliser une ou plusieurs fois
## Armes
Les armes sont des *équipement de mains* pouvant utiliser une ou plusieurs mains de votre personnage. Les armes existent en trois grands types de base
- Les armes de **CaC** (corps à corps) sont des armes qui utilisent un jet de FOR, et attaquent sur la défense normale. Les dégats effectué sont égaux aux niveaux de réussite plus la force de l'arme.
- Les armes à **distances** sont des armes qui utilisent un jet de PER, et attaquent sur la défense normale. Peuvent toucher à distance (logique). Les dégats effectué sont égaux aux niveaux de réussite plus la force de l'arme.
- Les **armes à feu** sont des armes qui utilisent un jet de PER, et attaquent sur la défense normale. Peuvent toucher à distance (logique). Les dégats effectué sont égaux uniquement à la force de l'arme, mais les chance de réussite critiques augmentent avec chaque % de compétence au dessus de 100.
En plus de cela, il est possible d'imaginer des *baguettes magiques* qui attaqueront sur le spécial, et utiliseront la VOL du personnage.
Voici un petit tableau d'armes de bases :
| Nom | Type | Mains | Effet | Force | Prix |
|:------:|:------:|:------:|:------:|:------:|:------:|
| Mains | CaC | 2 | Comptent comme main nue. Non-Lethal | 0 | 0 |
| Projectile | Distance | 1 | Lance un projectile (pierre, etc) | 0 | 0 |
| Poings | CaC | 2 | Comptent comme main nue. Non-Lethal | 2 | 80 |
| Griffe | CaC | 2 | Comptent comme main nue. Une blessure si critique | 3 | 150 |
| Batons | CaC | 2 | Non-Lethal | 2 | 80 |
| Fouet | CaC | 1 | Peut toucher à distance | 3 | 150 |
| Couteau | CaC | 1 | Peuvent être lancée. Une blessure si critique. Peut être utilisé pour causer 0 dégats mais une blessure. | 3 | 150 |
| Épée | CaC | 1 | Une blessure si critique | 5 | 400 |
| Épée à deux mains | CaC | 2 | Une blessure si critique | 8 | 550 |
| Hachette | CaC | 2 | -20% en FOR; Peut être lancé; Provoque une blessure (+1 si crit) | 5 | 550 |
| Haches | CaC | 2 | -40% en FOR; Provoque une blessure (+1 si crit) | 9 | 600 |
| Lance | CaC | 2 | Peut être lancé ; Touche des ennemis plus éloigné ; +50% dégat si sur/contre monture | 5 | 550 |
| Hallebarde | CaC | 2 | -20% en FOR; Peut être lancé ; Touche des ennemis plus éloigné ; +50% dégat si sur/contre monture | 12 | 600 |
| Marteau | CaC | 1 | Effet de brise-armure | 4 | 400 |
| Masses | CaC | 2 | -20% en FOR; Effet de brise-armure | 6 | 600 |
| Lance-Pierre | Distance | 1 | Peuvent être utilisée pour jeter des projectiles spécifiques | 1 | 150 |
| Fronde | Distance | 1 | Peuvent être utilisée pour jeter des projectiles spécifiques | 2 | 200 |
| Boumerang | Distance | 1 | Provoque un désaventage à l'esquive chez l'ennemi | 3 | 200 |
| Pelle | Outil | 2 | Peut être utilisé pour creuser | 1 | 100 |
| Fourchette | Outil | 2 | Manger rapporte +1 PM | 1 | 30 |
| Arc court | Distance | 2 | Perce-armure sur les hélicoptères | 4 | 350 |
| Arc long | Distance | 2 | Perce-armure sur les hélicoptères | 6 | 400 |
| Arbalète à une main | Distance | 1 | Semi perce-armure ; Peut s'enrayer | 6 | 500 |
| Arbalète | Distance | 2 | Semi perce-armure ; Peut s'enrayer | 8 | 600 |
| Escopette/Arquebuse | Arme à feu | 1 | Doit être rechargé tout les tir ; Réussite de DEF/2 | 5 | 400 |
| Revolver | Arme à feu | 1 | Doit être rechargé tout les trois tir ; Réussite de DEF/2 | 5 | 550 |
| Fusil | Arme à feu | 2 | -20% en PER; Doit être rechargé tout les deux tir ; Réussite de DEF/2 | 9 | 600 |
| Tromblon | Arme à feu | 2 | -20% en PER; Doit être rechargé tout les deux tir ; Touche une zone; Réussite de DEF/2 | 5 | 600 |
| Pistolet automatique | Arme à feu | 1 | -30% en FOR; Réussite de DEF/2 | 5 | 900 |
| Fusil automatique | Arme à feu | 2 | -50% en PER; Réussite de DEF/2 | 9 | 1200 |
| Fusil à double canon | Arme à feu | 2 | -50% en PER; Doit être rechargé tout les tirs ; Réussite de DEF/2 | 12 | 1200 |
## Boucliers
Les boucliers permettent de diminuer les dégats si un jet d'encaissement est réussi, en ajoutant leur puissance de protection à l'armure physique ou magique du personnage.
| Nom | Type | Mains | Effet | Force | Prix |
|:------:|:------:|:------:|:------:|:------:|:------:|
| Bouclier simple | Bouclier | 1 | | 1 | 100 |
| Bouclier renforcé | Bouclier | 1 | | 2 | 200 |
| Bouclier lourd | Bouclier | 1 | -20% pour encaisser/esquiver | 4 | 400 |
| Pavois | Bouclier | 2 | -30% niveau pour encaisser/esquiver | 6 | 550 |
## Effets d'arme et bouclier
Les armes et boucliers peuvent avoir un ou des effet(s) supplémentaire(s).
| Nom| Effet| Surcout |
|:------:|:------:|:------:|
| Améliorée | x1.5 force | +50% |
| Supérieur | x2 force | +100% |
| Ultime | x3 force | +200% |
| Pouic | x0 force | +0% |
| Acéré | Provoque une blessure à l'adversaire | +50% |
| Non-léthal | Tout coup avec ne fera pas tomber en dessous de 0 PV | +10% |
| Léthal | Double les chances de critique | +50% |
| Vorpale | Les critique font x3 au lieu de x2 | +100% |
| de verre | Double la force, mais ne peut être utilisé que deux fois | +10% |
| À accroche | À besoin d'une main de moins | +10% |
| Laser | Attaque sur l'armure spéciale (armes) | +100% |
| Consolidé | Effet du brise-armure divisé par 2 (bouclier) | +25% |
| Miroitante | Renvoie la moitié des dégâts spéciaux infligés (bouclier) | +50% |
## Tenues et armures
Les tenues sont un équipement offrant protection et effets divers à votre personnage. Les personnages ne peuvent porter qu'une tenues à la fois, il peut être donc intéressant d'adapter sa tenue aux circonstances. Les tenues se divisent principalement en deux types : Les vêtements (qui apportent peu de protection, mais des effets utiles) ou les armures (qui ont moins d'effets, mais plus de protection).
| Nom | Effet | Physique | Spécial | Prix |
|:------:|:------:|:------:|:------:|:------:|
| Vêtements communs | | 1 | 1 | 200 |
| Vêtements confortables | +1 armure mentale* | 1 | 1 | 300 |
| Tenue terrifiante | L'ennemi à +2% en échec critique | 1 | 1 | 300 |
| Tenue polaire | +20% pour résister au froid ; -20% pour résister au chaud | 1 | 1 | 300 |
| Tenue légère | +20% pour résister au chaud ; -20% pour résister au froid | 1 | 1 | 300 |
| Séduisante | +20% pour charmer | 1 | 1 | 300 |
| Maillot de Bain | +20% pour equiver* | 0 | 0 | 300 |
| Tenue discrète | +20% en DIS dans un lieu sombre | 1 | 1 | 400 |
| Uniforme de faction | Permet de donner l'impression d'être un membre de cette faction si l'on est pas trop connu | 1 | 1 | 400 |
| Costard | +20% sur les reventes ; +20% risque de se faire attaquer dans les rencontre aléatoire | 1 | 1 | 800 |
| Tenue majestueuse | +20% dans les statistiques sociales en milieu riche | 1 | 1 | 600 |
| Tenue du Héros | +20% CHA | 2 | 1 | 600 |
| Tenue de voyage | +20% pour les exploration de grand espace | 2 | 1 | 600 |
| Tenue renforcée | | 2 | 2 | 400 |
| Côte de maille | -10 % HAB | 4 | 2 | 750 |
| Armure d'apparat | -25 % DIS et HAB ; +20% dans les stats sociales en milieu riche ; +3 armure mentale* | 4 | 1 | 1050 |
| Armure | -25 % DIS et HAB | 5 | 2 | 950 |
| Armure Lourde | -40 % DIS et HAB | 7 | 3 | 1200 |
\* Les bonus de boost d'armure physique renforce cet élément
Les armures peuvent avoir les effets suivants :
| Nom| Effet| Surcout |
|:------:|:------:|:------:|
| Améliorée | Fait 50% de défense physique en plus | +50% |
| Supérieur | Fait 100% de défense physique en plus | +100% |
| Ultime | Fait 200% de défense physique en plus | +200% |
| Presque surnaturelle | Fait 50% de défense spéciale en plus | +50% |
| Magique | Fait 100% de défense spéciale en plus | +100% |
| Occulte | Fait 200% de défense spéciale en plus | +200% |
| Intégrale | Masque les points faibles | +25% |
| Consolidée | Effet du brise-armure divisé par 2 | +25% |
| Miroitante | Renvoie la moitié des dégâts spéciaux infligés | +50% |
| Champs d'énergie | Les attaques perce-armure font moitié dégats | +100% |
| Pare-balle | Anti-perce défense face aux armes à feux | +25% |
| Anti-explosion | Encaisse les explosions | +25% |
(Note : certains noms devront être adapté suivant les JDRs)
## Accessoires
Les accessoires sont des objets limités aux nombre de deux, qui peuvent améliorer un personnages. A noter que ces accessoires ne sont que des exemples, et que la liste sera très variable selon les JDRs.
<div class="dataTable-containeur">
| Accessoire | Effet | Prix |
|:----------:|:------|:----:|
| Renforceur | +15 en FOR | 650 |
| Bracelet de santé | +15 en CON | 650 |
| Chaussures de courses | +15 en HAB | 650 |
| Blouse | +15 en INT | 650 |
| Medaillon du penseur | +15 en SAG | 650 |
| Amulette de volonté | +15 en VOL | 650 |
| Cape de héros | +15 en CHA | 650 |
| Masque de voleur | +15 en DIS | 650 |
| Collier mignon | +15 en REL | 650 |
| Visière | +15 en PER | 650 |
| Sous-côte de maille | +3 armure physique | 750 |
| Rebourrage d'armure | +3 armure spéciale | 750 |
| Objet préféré | +3 armure mental | 750 |
| Lunettes | Protège de malus en perception | 750 |
</div>
## Objets
Les objets peuvent être stocké dans l'inventaire de votre personnage et utilisé quand le besoin s'en fait sentir. Certains objets sont consommable, d'autres sont réutilisable, et divers effets peuvent exister pouvant être utile.
| Objet | Effet | Prix |
|:----------:|:------|:----:|
| Nécessaire de camping | Permet de loger un petit groupe de personne (4~5). Réutilisable, mais prend de la place et doit prendre du temps pour être remonté | 200 |
| Nécessaire de jardinage | Rajoute +40% pour trouver des plantes ou ingrédients d'herboristeries | 800 |
| Nécessaire de soin | Rajoute +5% de réussite critique pour soigner ; permet de stabiliser quelqu'un dans le coma | 1000 |
| Nécessaire de cuisine | +30% pour cuisiner, fait de base des *repas de qualité*. Peut rajouter les effets de plantes à un plat. | 1000 |
| Repas complet de base | Des vivres pour une journée. Durent une partie. | 5 |
| Repas de qualité | Des vivres pour une journée + rajoute 10% à toutes les stats. Durent une partie. | 25 |
| Repas épicé | Des vivres pour une journée + 10% de résistence au froid. Durent une partie. | 25 |
| Repas fraicheur | Des vivres pour une journée + 10% de résistence à la chaleur. Durent une partie. | 25 |
| Alcool | Rend 1D12 PM, mais jet de CON pour éviter d'être ivre (-20% pour chaque conso supplémentaire). | 20 |
| Café | Offre +30% de résistence au sommeil. | 15 |
| Infusion d'Herbe | Permet d'appaiser quelque peu le personnage, rend 1D6 PM. | 15 |
| Thé | Servi en groupe, apporte +5% de REL à tout le monde. | 15 |
| Bandages | Retire une blessure | 10 |
| Antidote | Retire l'effet *poison* | 10 |
| Tisane Extra-forte | Retire l'effet *terreur* | 10 |
| Torche | Permet d'éclairer les lieux | 5 |
| Cordes | Permet d'attacher | 5 |
| Explosif | Fait 8 dégats d'explosion de zone | 40 |

86
content/rules/mobs.md Normal file
View file

@ -0,0 +1,86 @@
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: PNJs et créatures
order: 4
---
Les "mobs" (créatures ou PNJ) sont les différents êtres que vous pourrez rencontrer dans une partie hors des joueurs. Ils sont généralement joué par le MJ, mais celui-ci peut parfaitement déléguer certains liés à un PJ au joueur du PJ en question, ce qui permet une plus grande diversité des situations.
## PNJs
Un des deux grands types d'être que vous pourrez rencontrer dans un JDR sont les **PNJ** (Personnages Non Jouables). Ils représentent tout les êtres conscient que vous pouvez rencontrer, avec qui vous pourrez discuter ou non mais n'étant pas contrôlé par un autre joueur. Ces personnes ont besoin de différents éléments d'un personnages jouables (statistiques, equipements, pv/pe, voir quelques compétences ou capacités), mais cependant nécessite d'être plus simple pour pouvoir être construit rapidement par le MJ en cas de besoin.
Un PNJ possède une fiche un peu simplifiée par rapport à celle d'un PJ, notamment expurgée de la plupars des éléments relatifs au concept d'expérience.
Un PNJ comme un PJ possède une fiche avec les éléments suivants :
- Des PV et des PMs
- Les dix *statistiques* de base d'un personnage
- Les quatres dés d'actions
- De la pression
- Des *équipements*
- Six capacités
- Des compétences
Certains plus complexe peuvent être construit entièrement comme un PJ.
## Créatures
Les *créatures* sont les ennemis communs que les joueurs rencontrerons. Contrairement aux boss ou aux PNJ important, les créatures utilisent une fiche simplifiée, n'ayant ni concept d'expérience ni concepts complexes. Les créatures ont des comportements plus simple que ceux des PNJ classiques, étant plus régis par un instinct et des choses du genre. Cependant, ils peuvent également avoir une personnalité, qui se fait à partir d'un *jet de personnalité* est fait.
Ce ne sont cependant pas des monstres : le système de Pélican est assez flexible sur ce que vous rencontrez, et vous n'êtes pas obligé d'en faire des êtres à combattre.
Les créatures possèdent une fiche fortement simplifiée, avec la plupars des éléments nécessaires pour fonctionner intégré de base (armes, armures, etc) :
- Des PV et des PMs
- Les dix *statistiques* de base d'un personnage
- Les quatres dés d'actions
- De la pression
- Des armes et armures "intégrées"
- Quatre capacités utilisable par la créatures
## Recruter un PNJ
Certains PNJs pourront rejoindre votre équipe, et pourront avoir alors deux rôles : *accolyte* ou *suiveurs*.
- Les **acolytes** sont une sorte de "semi-PJ" lié soit à un PJ en particulier, soit au groupe de PJ. Dans le premier cas, il sera joué par le joueur du PJ, dans le second par le MJ directement. Ils ont une fiche de PNJ, avec toutes les simplifications habituelles (les six capacités, notamment, qui sont généralement plus unique) ou non (s'ils sont construit comme les PJs), et peuvent porter des objets, et même en changer au fur et à mesure de l'aventure, via le même système que les joueurs. Vous pouvez avoir 1 ou 2 acolytes qui vous aides en combats, suivant le nombre de joueurs et la situation.
- Les **suiveurs** sont des PNJ encore plus simplifié (statistiques + PV/PM + des compétences ou capacités) ne se battant pas et servant à accomplir des tâches très spécialisé (par exemple, un voleur engagé pour crocheté des serrures). S'ils ne combattent pas, certains peuvent avoir un pouvoir s'activant en combat (effectuer un soin tout les trois tour, par exemple). Ils peuvent être assez nombreux dans le groupe, mais seuls un peut être actif lors d'un combat.
Ce qui permet le recrutement se gère en RP.
## Domestiquer une créature
Pour influencer une créature, le joueur doit avoir une compétence de *maitre des (type de créature)* pour ne pas faire de jet affaibli. Ces jets sont plus ou moins difficile suivant l'attitude et affecté par la stat de *docilité* de la créature.
Avec une capacité de **domestication** approprié, un joueur peut aussi tenter de faire d'un animal sauvage un familier, si celui-ci est dans une attitude adéquate ou neutre. La compétence citée ci-dessus est également nécessaire
### Familiers
Chaque personnage peut avoir un *familier*. Un familier est une créature domestiquée qui suivra de prêt le personnage, devenant presque un mini-personnage, et pourra même se battre. Il n'y a pas de limite au nombre maximum de familiers, mais le MJ peut décider de rajouter des malus plus le joueur en a.
Les familiers sont sauf exceptions mortels, et doivent se retirer du combat avant de tomber KO, ou alors il faut les faire sortir. Un joueur ne peut avoir qu'un familier qui l'aide en combat à la fois, et pas plus. Ils jouent après ou avant le tour de leur joueur.
Les familiers utilisent des fiches de *créatures simples*.
## Créature géante
Les créatures géantes sont des créatures très grandes. Mais genre très très grandes. Cela entraîne quelques particularités dans leur manière d'être gérée. En effet, les créatures géantes sont plus durables et plus puissante, mais ne peuvent plus esquiver les entités non-géantes (sauf pouvoir spécifique). Cela entraîne les règles et particularités suivantes:
- Une créature géante doit avoir 3 stack d'une affliction infligée pour qu'elle s'active
- Une créature géant ne peut pas esquiver les attaques de personnage ou véhicule non-géant
- Ses PV seront égal à environ 5 fois ceux équivalent d'une créature de taille "normale" (par exemple, un rat géant aura 100 PV au lieu de 20)
- Son armure et ses dégats seront généralement doublés (notamment via un bonus flat sur le dés de CaC et vigueur)
Les joueurs peuvent bénéficier de l'aide de créature/forme géante, cependant pour des raisons d'équilibrage, une créature géante ne peut rester que trois tour en combat normal, si elle est invoquée face à des ennemis normaux.
## Nuée de créature
Les nuée sont des groupes de créature ou PNJ fonctionnant comme un seul. Il s'agit d'un moyen de faire affronter des grands nombre d'ennemis plus facilement. Les troupes sont plus durable au début, mais saffaiblissent au fur et à mesure qu'elles subissent des dégâts. Elles sont constitué d'un certain nombre d'ennemis de même type, ce qui augmentent les PV et leur nombre d'action de la manière suivante:
- Leur nombre de PV initial est égal au nombre de créature × le nombre de PV de base. Par exemple, pour un pack de six rat de 20PV aura 120PV en tout.
- De même, le nombre de créature restantes est lié au nombre de PV. Par exemple, pour le pack de six rat, si vous lui faite 43 dégats, deux rats seront vaincus.
- Les attaques sont multi-coup et lié aux nombre de créature.
- Cependant l'encaissement et l'esquive de la meute est faite comme une seule fiche

View file

@ -0,0 +1,179 @@
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: Personnages
order: 0
---
Les personnages sont le coeur de tout JDR, et Pélican ne fait pas exception à la règle. Voici comment fonctionne le système de personnages, et les différentes variables qu'il utilise.
Un personnage contient de base les éléments suivantes :
- Des PV (point de vie) et des PM (points de moral) qui définissent la capacité à tenir du personnage.
- Dix statistiques qui représentent la base de ce qu'il veut faire, allant par défaut de 0 à 80 (pouvant être augmenté).
- Quatre *dés d'actions* permettant de déterminer la puissance de certaines attaques.
- Un nombre arbitraire de compétence allant de 0 à 70 qui s'ajoutent aux statistiques pour faire les actions.
- La pression qui détermine les réussites et échecs critiques.
- Des pouvoirs qui seront souvent déterminé suivant le JDR et son système de classe, voir construit par le MJ au fur et à mesure du JDR pour le personnage en particulier.
- Des trait uniques choisi à la création du personnage (généralement un négatif et un positif).
## Les PVs et les PMs
Les personnages peuvent se prendre des dégâts de plusieurs manière, sur leur *physique* et leur *moral*. C'est représenté par deux variables, les PVs et les PMs.
- Les **PVs** représentent la vitalité physique de votre personnage. Lorsqu'ils tombent à zéro, votre personnage devient *inconscient*, et lorsqu'il tombent à leur maximum en négatif, le personnage doit faire un *jet de survie* (lancer un D100 face à un pourcentage de survie établi par le MJ pour survivre à la situation).
- Les **PMs** représentent l'état mental du personnage. Lorsqu'ils tombent à zéro, votre personnage fait un *jet de panique* qui va déterminer comment se déroulera la suite du combat. Lorsqu'ils tombent à -max, il doit faire chaque tour un jet pour ne pas s'évanouir et tomber à 0 PV.
En plus de cela, votre personnage peut avoir un certain nombre de *blessures*. Chaque blessure fait 1 dégats par tour, et doivent être soignées séparément.
## Statistiques
Les dix statistiques sont divisés en statistiques physiques, mentales et de caractères, ainsi que la perception. Une personne à en moyenne « 50 » à une stat. Les statistiques sont les suivantes :
| | | |
|:---------:|:----------------:|:------------:|
| **FORCE**<br />*Force brute physique (frapper, soulever, faire un bras de fer…)* | **INTELLIGENCE**<br />*Analyse et réflexion (érudition, calculer, réparer une machine)* | **CHARISME**<br />*Aura extérieure (confiance en soi, prestance, impressionner)* |
| **CONSTITUTION**<br />*Résistance physique (encaisser, résister aux maladies…)* | **SAGESSE**<br />*Faire les bons choix (voir les manipulations, les pièges)* | **DISSIMULATION**<br />*Capacité à masquer la vérité (mentir, se cacher, bluffer)* |
| **HABILITÉ**<br />*Agilité et dextérité (minutie, esquive, course à pied…)* | **VOLONTÉ**<br />*Force mentale (rester sur sa voie, résister aux pressions)* | **RELATIONNEL**<br />*Sociabilité et empathie (comprendre les autres, se faire apprécier)* |
| | **PERCEPTION**<br />*Sens et observation (regarder au loin, écouter, chercher des indices)* | |
Lors d'une action, les statistiques peuvent être utilisée telles qu'elle, ou divisée par deux avec l'aide d'une compétence.
## Dés d'actions
Le joueur possède quatre dés d'actions, qui peuvent être situé entre un D4 et un D20
- Le dé de CaC permet de déterminer la puissance d'une attaque au CaC
- Le dé de vigueur permet de déterminer un encaissement
- Le dé de jet permet de déterminer la puissance d'un lancé
- Le dé de mental permet de déterminer la puissance du mental
Certains pouvoirs de JDR peuvent monter le minimum d'un jet. Si un pouvoir ou une capacité ferait monter les dé au dessus du D20, ils reçoivent ensuite un bonus de +2 (qui sera doublé par les critiques).
## Pression
La pression est la statistique de base indiquant le pourcentage d'échec et de réussite critique. Chaque personnage ont un niveau de pression différent, la base étant de 5.
## Compétences
<div class="well warning">
**Attention :** Les compétences doivent avoir un aspect RP (par exemple en s'étant essayé à cela durant les partie).
</div>
Les compétences sont le coeur de Pélican, servant a effectuer les actions, avec l'aide des statistique. Une compétence est une représentation générique d'une action ou d'un domaine d'activité. Les actions n'ayant pas besoin de compétence utilisent uniquement leur statistique. Une action commence à +0 de bonus, et augmente de 10 en 10 jusqu'à la limite possible à ce moment dans le JDR.
### Exemples de compétences
| | | | |
|:-:|:-:|:-:|:-:|
| **Diversion (HAB/INT)**<br />Permet de détourner l'attention | **Pickpocket(HAB+DIS)**<br />Permet de voler quelque chose discrêtement | **Perce-mensonge**<br />Permet de savoir quand quelqu'un ment | **Pistage (PER)**<br />Permet de suivre une liste |
| **Avenant (REL)**<br />Permet d'être apprécié naturellement | **Juge de caractère (SAG/REL)**<br />Permet de savoir quand se méfier de quelqu'un | **Connaissance du monde**<br />Permet d'avoir des connaissances même de lieux non visités. | **Connaissances occultes**<br />Permet d'avoir des connaissances des choses occultes et surnaturels |
| **Apnée**<br />Permet de retenir plus longtemps sa respiration. | **Natation**<br />Permet de nager. | **Spiritualité**<br />Représente sa connection avec les choses spirituelles. | **Déguisement**<br />Permet de se déguiser et dissimuler son apparence. |
| **Escalade**<br />Permet de gravir des obstacles. | **Fouille**<br />Permet d'obtenir plus facilement des gains lors de fouilles | **Détection des pièges**<br />Permet de trouver des pièges. | **Langue (nom de la langue)**<br />Indique la maitrise d'une langue |
| **Épée**<br />Permet de manier des épées | **Lance**<br />Permet de manier des lances | **Hache**<br /> Permet de manier des haches | **Arc**<br />Permet de manier des arcs |
| **Fouet**<br />Permet de manier des fouets. | **Pistolet**<br />Permet de manier des pistolets | **Fusil**<br />Permet de manier des fusils | **Bouclier**<br />Permet de manier des boucliers |
## Pouvoirs
Les personnages peuvent avoir des pouvoirs, qui sont des capacités actives ou passives qui peuvent être utilisé en combat, dans le RP, etc. Ces pouvoirs peuvent être très dépendant du JDR, et dans pélican ne seront donné que quelques exemples. Voici quelques moyens dont les pouvoirs peuvent être fait :
- Un système de classe ou le PJ reçoit ou choisi des pouvoirs parmis plusieurs différents offert par une classe
- Un système de pouvoirs lié au compétence ou le PJ se spécialisé dans certaines disciplines
- Un système de pouvoirs uniques choisis sur le tas pour plusieurs PNJs et ou d'autres s'ajoutent au fur et à mesure
## Création du personnage
La première chose à faire dans un JDR, est de créer un personnage. Pélican à pour objectif d'offrir un système simple, fondé sur la customisation et la posibilité de facilement créer et faire évoluer un personnage dans le sens qui nous intéresse.
Plusieurs éléments influencent sur la création du personnage et nous allons indiquer ici les différentes étape de création du personnage. Chaque JDR utilisant Pélican peut customiser cela et ajouter ses propres étapes. Les éléments tels que le genre n'affectent pas les statistiques ou pouvoir des personnages.
La constitution d'un personnage se fait en faisant les étapes suivantes :
- **Les traits de personnalités** : Choix de deux traits de personnalités.
- **Traits unique** : Chaque personnage reçoit deux traits unique, un positif et un négatif lié au RP du personnage (mais qui peuvent aussi affecter sur le combat, etc)
- **Boost de stat** : Un boost supplémentaire de 10% à placer sur l'une des caractéristique qui n'a pas été augmenté par la personnalité.
- **Répartition des compétences** : 5 compétence à 0 offertes de base et 100 point de compétence à dépenser dans diverses compétences (limité à 30% par compétence). Tout cela peut être augmenté suivant le niveau d'expertise des PJ au début de la partie, ici c'est pour repésenter des novices.
Dans certains JDR, il est aussi possible d'avoir différentes espèces, qui pourront avoir les caractéristiques suivantes :
- Des bonus/malus de statistiques, PV, PM, pression.
- Des traits passifs
- Des armes ou armures intégrées
A côté de cela, vous pouvez également noter quelques éléments spécifiques à votre personnage dans la section "notes".
### Stats de base
Un personnage basique avant création à les traits suivants :
- 50 à toutes ses statistiques (pour 500 au total)
- 14 PV et 14 PM
- 5 de pression
Cela peut varier avec un système d'espèce
### Traits uniques
Chaque personnage peuvent obtenir à la création deux traits qui lui sont unique (voir création du personnage). Ces traits sont des pouvoirs passif, présent en permanence. il ne sont pas activable ou désactivable, et représentent les particularités du personnages. En création de personnages, deux traits sont choisis.
| | | |
|:----------:|:-------:|:----:|
| **Sprint sans échauffement**<br /> Permet de remplacer un jet d'HAB par un jet de FOR, mais se prendra 0.5x les niveaux de réussite (ou d'échec) en dégâts. | **Passion**<br />Permet de définir une cause, et si la cause arrive en jeu, +2 pt de pression tous les 5 % au-dessus de 50% en Volonté. | **Berk**<br />-20 % en VOL contre les trucs dégueulasses. |
### Traits de personnalités
Un élément définissant votre personnage est sa **personnalité**. Les traits de personnalités de votre personnages participent à la fois à le définir in-RP avec les points généraux de son comportement, mais également donne une base à ses statistiques et à des pouvoirs unique qu'il pourra obtenir dans le futur.
Il y a en tout 40 traits de personnalités que vous pouvez utiliser pour définir votre personnage. Deux traits seront attribué au personnage.
Chaque trait offre :
- Une statistique montée de 20% par rapport à la base du personnage.
- Une statistique montée de 10% par rapport à la base du personnage.
- Une statistique diminuée de 10% par rapport à la base du personnage.
Si une personnalité doit être choisi au hasard, alors le jet suivant est fait 1D4 pour la dizaine, et 1D10 pour l'unité.
| Nom | +20 | +10 | -10 |
|:----|:---:|:---:|:---:|
| **Costaud** | FOR | CON | HAB |
| **Brute** | FOR | DIS | REL |
| **Chevaleresque** | FOR | SAG | DIS |
| **Hippy/Naturel** | CON | PER | FOR |
| **Soldat** | CON | VOL | DIS |
| **Sportif** | CON | HAB | PER |
| **Gardien** | CON | REL | VOL |
| **Adroit** | HAB | REL | CON |
| **Acrobate** | HAB | FOR | DIS |
| **Roublard** | HAB | DIS | VOL |
| **Casse-cou** | HAB | VOL | SAG |
| **Intello/Nerd** | INT | PER | CHA |
| **Littéraire** | INT | SAG | CON |
| **Malin/Futé** | INT | HAB | FOR |
| **Rigoureux/Travailleur** | INT | CON | HAB |
| **Responsable** | SAG | CON | CHA |
| **Ermite/Ascete** | SAG | DIS | REL |
| **Sage** | SAG | REL | INT |
| **Débrouillard** | SAG | INT | PER |
| **Vertueux** | VOL | REL | DIS |
| **Fanatique/Foufou** | VOL | INT | SAG |
| **Assuré** | VOL | CHA | PER |
| **Saboteur/Délinquant** | VOL | DIS | CON |
| **Meneur/Stratège** | CHA | INT | HAB |
| **BG** | CHA | CON | PER |
| **Autoritaire** | CHA | FOR | REL |
| **Visionnaire** | CHA | PER | SAG |
| **Craintif/Lâche** | DIS | SAG | VOL |
| **Edgy/Mystérieux** | DIS | CHA | REL |
| **Manipulateur** | DIS | REL | FOR |
| **Fouineur** | DIS | INT | CHA |
| **Charmeur** | REL | CHA | INT |
| **Altruiste** | REL | PER | VOL |
| **Vendeur** | REL | INT | HAB |
| **Héroïque** | REL | FOR | INT |
| **Bidouilleur** | PER | HAB | CHA |
| **Observeur** | PER | SAG | CON |
| **Traqueur/Chasseur** | PER | FOR | INT |
| **Espion** | PER | DIS | FOR |

View file

@ -0,0 +1,47 @@
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: Réputation et prestige
order: 10
---
Avoir une bonne réputation peut être important pour une aventure… cependant, une réputation n'est pas forcément quelque chose de simple.
## Les différentes réputations
Ce JDR simule la réputation à travers trois éléments :
- La réputation **morale**, représentant à quel point vos actes sont juste et bons, si vous aidez les gens. Ce type de réputation sera préféré par les libre-penseur voulant voir le bien être fait.
- La réputation **d'obéissance aux règles**, représentant à quel point vous êtes chaotique ou obéissant. Ce genre de réputation sera préféré par les hauts-gradés se demandant si vous leurs serez fiable. Ce genre de réputation sera cependant moins aimé par les rebelles.
- Les différentes réputations **auprès des factions** existant dans le JDR. Ce genre de réputation sera préféré par les membres desdites factions, même si tout les membres ne seront pas forcément entre accord avec l'idée d'obéir avec quelqu'un ayant une mauvaise réputation même si vous les avez aidé…
Cependant, d'autres éléments peuvent jouer sur le prestige d'un personnage
## Les points de prestige
Le prestige est une stat dexpérience spéciale qui permet dajouter un bonus à certaines actions spécifiques (si le MJ lautorise). Chaque partie rajoute un certain nombre de point de prestige, suivant comment léquipe à fait parler positivement delle.
Le prestige peut être utiliser pour booster l'un des cinq capitaux sociaux du jeu, et a effectuer des **jets de prestiges**. Ces jet permettent d'obtenir des service et des bonus particulier, en l'échange de points présent dans l'une des catégories suivantes. Un point de prestige rajoute un point dans l'une des catégories. La présence de certains hauts-faits de groupes peuvent également faire pencher la balance dans un sens ou un autre.
Le prix pour faire le jet dépendra de votre réputation globale et/ou plus particulièrement celle avec la faction. Si le joueur peut rajouter 1 point de prestige pour avoir 5% supplémentaire au jet. Si le jet est échoué, les points sont perdus.
Les cinq capitaux sociaux sont :
- La **popularité (CHA/REL)** représente *à quel point vous pouvez être aimé* et permet d'obtenir des services de gens pour ce qu'on a fait.
- Le **leadership (CHA/DIS)** représente *à quel point vous pouvez être considéré comme un leader* et permet d'obtenir un suiveur à partir d'un PNJ ou de poser votre position.
- Le **respect (REL/DIS)** représente *à quel point vous pouvez être considéré comme respectable* et permet d'éviter des combats et des conflits par votre présence.
- La **confiance (REL/CHA)** représente *à quel point vous pouvez être considéré comme doué* et permet de rassurer sur votre capacité à accomplir une tache, et donc possiblement d'accéder à des quêtes ou missions.
- Le **secret (DIS/SAG)** représente *à quel point on peut vous faire confiance avec une information* et permet d'obtenir des informations supplémentaires et des secrets.
## Haut-faits
Les hauts-faits sont tout les moments ou un personnage à fait des actions incroyable - en bien comme en mal, et qui ont marqué aussi bien le maître du jeu que le monde autour du personnage.
Ils peuvent être rappelé si besoin, quand ils pourraient avoir une influence certaine sur l'issue d'une situation...

View file

@ -1,4 +1,10 @@
# Les véhicules
---
layout: layouts/layout.njk
eleventyNavigation:
parent: Système de jeu
key: Les véhicules et montures
order: 5
---
Les véhicules représentent tous les appareils dans lequel un personnage peut grimper afin de se déplacer ou d'effectuer quelques actions. Il s'agit d'un système générique pouvant décrire n'importe quel type de véhicule, permettant de mieux les visualiser et les comprendre.
@ -37,10 +43,11 @@ Le véhicule peut aussi offrir des *Bonus* et *Malus* dans les différentes stat
Un véhicule possède une vitalité, représentant à quel point il est encore en état de fonctionnement. Cette vitalité cependant ne comporte aucune partie "esprit" et ne présente que des PV, et une armure physique et magique. Cependant, elle possède trois caractéristiques propres
- Les **dégats de destructions** représentent les dégats fait à toute personne encore sur le véhicule si celui-ci est détruit. Il peut être exprimé sous forme d'une valeur fixe (20), d'un dé (1D20) ou d'un pourcentage des PV (100%) max du joueur. Cela ne prend pas les autres types de dégats qui pourraient arriver, telle une chute depuis le ciel.
- L'**échappatoire** est un bonus ou malus apporté au jet de survie si jamais un accident tue le personnage.
- La **réparabilité** représente un bonus ou malus pour réparer l'appareil.
- Trois dés :
- Le **dé de CaC** indique les dégats de bases que fait le véhicule.
- Le **dé de vigueur** indique de combien le véhicule va encaisser le véhicule.
- Le **dé de réparation** indique de combien le véhicule est réparé lors d'une réparation.
## Les actions sur le véhicule
@ -52,7 +59,7 @@ Les actions effectuée dans un véhicule peuvent se diviser en plusieurs catégo
- Les autres actions, que peut imaginer le joueur, qui pourront aussi être effectué par le passagés, qui seront différentes suivants les circonstances. Si le véhicule est ouvert, le joueur peut faire alors des actions à distance dans le véhicule, profitant de ses armes à distance, etc.
- Un dernier type d'action, qui dans la plupart des cas sera surtout faisable au repos, est la **réparation**. Celle-ci demande une compétence particulière (la réparation du type de véhicule) pour éviter que le jet soit un jet affaibli. La réparabilité ajoute un bonus et un malus, et la réparation permet de restaurer des PV au véhicule.
- Un dernier type d'action, qui dans la plupart des cas sera surtout faisable au repos, est la **réparation**. Celle-ci demande une compétence particulière (la réparation du type de véhicule) pour éviter que le jet soit un jet affaibli. Les PV sont restauré à partir du *dé de réparation*.
Dans tout les cas, ces actions ne peuvent être fait par le conducteur (sauf quand indiqué par l'action). Cependant, le conducteur peut effectuer des actions lié à sa conduite, tel que foncer dans un autre véhicule, etc.
@ -78,15 +85,39 @@ Cependant, il existe plusieurs types de collisions entre véhicule :
- *Sur l'arrière* : Le véhicule visé peut faire un jet de puissance aussi, qui se rajoutera en plus de son jet de défense (représentant à quel point sa vitesse rend la vitesse relative du véhicule plus faible).
## Véhicules géantes
## Montures
> [!WARNING]
> Les informations données ici sont des informations générale, donnée à titre indicatif. Pour la création de boss géant, le joueur peut bien évidemment adapter cela.
Les montures sont des animaux qui peuvent servir de véhicules, pour amener un personnage à un endroit, ou participer à un combat de véhicules/montures. Elles sont généralement moins véloces qu'un véhicule, mais offrent quelques avantages.
La fiche d'une monture est basée sur celle d'une *créature* et qui reçoit les informations suivante par rapport à une fiche ordinaire :
- Nombre de passager
- Les milieux dans lesquels la montures peut se déplacer.
- Une représentation de la distance/vitesse
La monture ne produit ni bonus, ni malus au joueur pour les différentes actions qu'iel fait, mais possède son propre tour d'action (étant une créature vivante). Pour monter une créature, les personnages nécessitent une compétence de *monter (espèce de la créature)* pour ne pas avoir de jets affaiblis lorsqu'ils monteront dessus.
La monture peut également recevoir une capacité spéciale de monture, ajoutant un effet à son arrivée en plein milieu d'un combat.
## Véhicule géant
Comme les créatures, les véhicules aussi peuvent être géants ! Des particularités similaires sont alors présentes, à savoir que les véhicules géants sont plus fort et plus durables, mais ne peuvent plus esquiver les entités non-géantes (sauf pouvoir spécifique). Cela entraine les règles et particularités suivantes:
- Une créature géant ne peut pas esquiver les attaques de personnage ou véhicule non-géant
- Une créature géant ne peut pas esquiver les attaques de personnage ou véhicule non-géant.
- Ses PV seront égal à environ 5 fois ceux équivalent d'un véhicule de taille "normale".
- Son armure et ses statistiques sont généralement le double d'un véhicule normale.
- Son armure et ses dégats fait sont doublés.
Les joueurs peuvent bénéficier de l'aide d'un véhicule géante, cependant pour des raisons d'équilibrage, un véhicule géante ne peut rester que trois tour en combat normal, s'il est invoqué face à des ennemis normaux.
### Combats d'équipages
Les combats d'équipages sont des combats utilisant des équipages d'un bateau, d'un vaisseau, ou de tout véhicules plus grand que la moyenne. Chaque personnages peut avoir un rôle différent suivant les situations. Chaque rôle demande alors des compétences spécifiques utiles.
Comme pour un combat normal, chaque personnage fait *jet d'initiative* pour connaître sa place dans le combat, en utilisant sa statistique d'HAB.
| Rôle | Compétences | Effets |
|:----:|:-----------:|:-------|
| Capitaine | Stratégie, Commandement | Permet d'ajouter des bonus à une action aux autres personnages s'ils obéissent aux ordres. |
| Réparateur | Mécanique | Permet de réparer le véhicule les niveaux de réussite (voir actions de véhicule) |
| Pilote | Pilotage | Permet de produire des esquives, et/ou de définir la direction du véhicule |
| Armes | (dépend de l'arme) | Fait un tir avec les armes (dégats dépendent de l'arme) |

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,331 +0,0 @@
/*!
* Bootstrap Reboot v4.3.1 (https://getbootstrap.com/)
* Copyright 2011-2019 The Bootstrap Authors
* Copyright 2011-2019 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
font-family: sans-serif;
line-height: 1.15;
-webkit-text-size-adjust: 100%;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
display: block;
}
body {
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
color: #212529;
text-align: left;
background-color: #fff;
}
[tabindex="-1"]:focus {
outline: 0 !important;
}
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: 0.5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
abbr[title],
abbr[data-original-title] {
text-decoration: underline;
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
cursor: help;
border-bottom: 0;
-webkit-text-decoration-skip-ink: none;
text-decoration-skip-ink: none;
}
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit;
}
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0;
}
dt {
font-weight: 700;
}
dd {
margin-bottom: .5rem;
margin-left: 0;
}
blockquote {
margin: 0 0 1rem;
}
b,
strong {
font-weight: bolder;
}
small {
font-size: 80%;
}
sub,
sup {
position: relative;
font-size: 75%;
line-height: 0;
vertical-align: baseline;
}
sub {
bottom: -.25em;
}
sup {
top: -.5em;
}
a {
color: #007bff;
text-decoration: none;
background-color: transparent;
}
a:hover {
color: #0056b3;
text-decoration: underline;
}
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
outline: 0;
}
pre,
code,
kbd,
samp {
font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
font-size: 1em;
}
pre {
margin-top: 0;
margin-bottom: 1rem;
overflow: auto;
}
figure {
margin: 0 0 1rem;
}
img {
vertical-align: middle;
border-style: none;
}
svg {
overflow: hidden;
vertical-align: middle;
}
table {
border-collapse: collapse;
}
caption {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
color: #6c757d;
text-align: left;
caption-side: bottom;
}
th {
text-align: inherit;
}
label {
display: inline-block;
margin-bottom: 0.5rem;
}
button {
border-radius: 0;
}
button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
optgroup,
textarea {
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
button,
input {
overflow: visible;
}
button,
select {
text-transform: none;
}
select {
word-wrap: normal;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
cursor: pointer;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
padding: 0;
border-style: none;
}
input[type="radio"],
input[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
-webkit-appearance: listbox;
}
textarea {
overflow: auto;
resize: vertical;
}
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0;
}
legend {
display: block;
width: 100%;
max-width: 100%;
padding: 0;
margin-bottom: .5rem;
font-size: 1.5rem;
line-height: inherit;
color: inherit;
white-space: normal;
}
progress {
vertical-align: baseline;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
outline-offset: -2px;
-webkit-appearance: none;
}
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-file-upload-button {
font: inherit;
-webkit-appearance: button;
}
output {
display: inline-block;
}
summary {
display: list-item;
cursor: pointer;
}
template {
display: none;
}
[hidden] {
display: none !important;
}
/*# sourceMappingURL=bootstrap-reboot.css.map */

File diff suppressed because one or more lines are too long

View file

@ -1,8 +0,0 @@
/*!
* Bootstrap Reboot v4.3.1 (https://getbootstrap.com/)
* Copyright 2011-2019 The Bootstrap Authors
* Copyright 2011-2019 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}
/*# sourceMappingURL=bootstrap-reboot.min.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,446 +0,0 @@
/*!
Fork Awesome 1.1.7
License - https://forkaweso.me/Fork-Awesome/license
Copyright 2018 Dave Gandy & Fork Awesome
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
.fas,
.fab,
.far {
display: inline-block;
font: normal normal normal 14px/1 ForkAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.fas.fa-chart-area:before {
content: "\f1fe";
}
.fas.fa-arrows-alt:before {
content: "\f047";
}
.fas.fa-expand-arrows-alt:before {
content: "\f0b2";
}
.fas.fa-arrows-alt-h:before {
content: "\f07e";
}
.fas.fa-arrows-alt-v:before {
content: "\f07d";
}
.fas.fa-calendar-alt:before {
content: "\f073";
}
.fas.fa-circle-notch:before {
content: "\f1ce";
}
.fas.fa-cloud-download-alt:before {
content: "\f0ed";
}
.fas.fa-cloud-upload-alt:before {
content: "\f0ee";
}
.fas.fa-credit-card:before {
content: "\f283";
}
.fas.fa-dollar-sign:before {
content: "\f155";
}
.fas.fa-euro-sign:before {
content: "\f153";
}
.fas.fa-exchange-alt:before {
content: "\f0ec";
}
.fas.fa-external-link-alt:before {
content: "\f08e";
}
.fas.fa-external-link-square-alt:before {
content: "\f14c";
}
.fas.fa-eye-dropper:before {
content: "\f1fb";
}
.fas.fa-pound-sign:before {
content: "\f154";
}
.fas.fa-glass-martini:before {
content: "\f000";
}
.fas.fa-shekel-sign:before {
content: "\f20b";
}
.fas.fa-rupee-sign:before {
content: "\f156";
}
.fas.fa-won-sign:before {
content: "\f159";
}
.fas.fa-level-down-alt:before {
content: "\f149";
}
.fas.fa-level-up-alt:before {
content: "\f148";
}
.fas.fa-chart-line:before {
content: "\f201";
}
.fas.fa-long-arrow-alt-down:before {
content: "\f175";
}
.fas.fa-long-arrow-alt-left:before {
content: "\f177";
}
.fas.fa-long-arrow-alt-right:before {
content: "\f178";
}
.fas.fa-long-arrow-alt-up:before {
content: "\f176";
}
.fas.fa-map-marker-alt:before {
content: "\f041";
}
.fas.fa-mobile-alt:before {
content: "\f10b";
}
.fas.fa-pencil-alt:before {
content: "\f040";
}
.fas.fa-pen-square:before {
content: "\f14b";
}
.fas.fa-chart-pie:before {
content: "\f200";
}
.fas.fa-yen-sign:before {
content: "\f157";
}
.fas.fa-ruble-sign:before {
content: "\f158";
}
.fas.fa-shield-alt:before {
content: "\f132";
}
.fas.fa-sign-in-alt:before {
content: "\f090";
}
.fas.fa-sign-out-alt:before {
content: "\f08b";
}
.fas.fa-sliders-h:before {
content: "\f1de";
}
.fas.fa-tablet-alt:before {
content: "\f10a";
}
.fas.fa-tachometer-alt:before {
content: "\f0e4";
}
.fas.fa-thumbtack:before {
content: "\f08d";
}
.fas.fa-ticket-alt:before {
content: "\f145";
}
.fas.fa-trash-alt:before {
content: "\f1f8";
}
.fas.fa-lira-sign:before {
content: "\f195";
}
.fab.fa-linkedin-in:before {
content: "\fe01";
}
.fab.fa-linkedin:before {
content: "\f08c";
}
.far.fa-address-book:before {
content: "\f2ba";
}
.far.fa-address-card:before {
content: "\f2bc";
}
.far.fa-arrow-alt-circle-down:before {
content: "\f01a";
}
.far.fa-arrow-alt-circle-left:before {
content: "\f190";
}
.far.fa-arrow-alt-circle-right:before {
content: "\f18e";
}
.far.fa-arrow-alt-circle-up:before {
content: "\f01b";
}
.far.fa-bell:before {
content: "\f0f3";
}
.far.fa-bell-slash:before {
content: "\f1f7";
}
.far.fa-bookmark:before {
content: "\f097";
}
.far.fa-building:before {
content: "\f0f7";
}
.far.fa-calendar-check:before {
content: "\f274";
}
.far.fa-calendar-minus:before {
content: "\f272";
}
.far.fa-calendar:before {
content: "\f133";
}
.far.fa-calendar-plus:before {
content: "\f271";
}
.far.fa-calendar-times:before {
content: "\f273";
}
.far.fa-caret-square-down:before {
content: "\f150";
}
.far.fa-caret-square-left:before {
content: "\f191";
}
.far.fa-caret-square-right:before {
content: "\f152";
}
.far.fa-caret-square-up:before {
content: "\f151";
}
.far.fa-check-circle:before {
content: "\f05d";
}
.far.fa-check-square:before {
content: "\f046";
}
.far.fa-circle:before {
content: "\f10c";
}
.far.fa-clock:before {
content: "\f017";
}
.far.fa-comment:before {
content: "\f0e5";
}
.far.fa-comment-dots:before {
content: "\f27b";
}
.far.fa-comments:before {
content: "\f0e6";
}
.far.fa-dot-circle:before {
content: "\f192";
}
.far.fa-id-card:before {
content: "\f2c3";
}
.far.fa-envelope:before {
content: "\f003";
}
.far.fa-envelope-open:before {
content: "\f2b7";
}
.far.fa-file-archive:before {
content: "\f1c6";
}
.far.fa-file-audio:before {
content: "\f1c7";
}
.far.fa-file-code:before {
content: "\f1c9";
}
.far.fa-file-excel:before {
content: "\f1c3";
}
.far.fa-file-image:before {
content: "\f1c5";
}
.far.fa-file-video:before {
content: "\f1c8";
}
.far.fa-copy:before,
.far.fa-file:before {
content: "\f016";
}
.far.fa-file-pdf:before {
content: "\f1c1";
}
.far.fa-file-powerpoint:before {
content: "\f1c4";
}
.far.fa-file-alt:before {
content: "\f0f6";
}
.far.fa-file-word:before {
content: "\f1c2";
}
.far.fa-flag:before {
content: "\f11d";
}
.far.fa-save:before {
content: "\f0c7";
}
.far.fa-folder:before {
content: "\f114";
}
.far.fa-folder-open:before {
content: "\f115";
}
.far.fa-frown:before {
content: "\f119";
}
.far.fa-futbol:before {
content: "\f1e3";
}
.far.fa-hand-rock:before {
content: "\f255";
}
.far.fa-hand-lizard:before {
content: "\f258";
}
.far.fa-hand-point-down:before {
content: "\f0a7";
}
.far.fa-hand-point-left:before {
content: "\f0a5";
}
.far.fa-hand-point-right:before {
content: "\f0a4";
}
.far.fa-hand-point-up:before {
content: "\f0a6";
}
.far.fa-hand-paper:before {
content: "\256";
}
.far.fa-hand-pointer:before {
content: "\f25a";
}
.far.fa-hand-scissors:before {
content: "\f257";
}
.far.fa-hand-spock:before {
content: "\f259";
}
.far.fa-handshake:before {
content: "\f2b5";
}
.far.fa-hdd:before {
content: "\f0a0";
}
.far.fa-heart:before {
content: "\f08a";
}
.far.fa-hospital:before {
content: "\f0f8";
}
.far.fa-hourglass:before {
content: "\f250";
}
.far.fa-id-card:before {
content: "\f2c3";
}
.far.fa-keyboard:before {
content: "\f11c";
}
.far.fa-lemon:before {
content: "\f094";
}
.far.fa-lightbulb:before {
content: "\f0eb";
}
.far.fa-meh:before {
content: "\f11a";
}
.far.fa-minus-square:before {
content: "\f147";
}
.far.fa-money-bill-alt:before {
content: "\f0d6";
}
.far.fa-moon:before {
content: "\f186";
}
.far.fa-newspaper:before {
content: "\f1ea";
}
.far.fa-paper-plane:before {
content: "\f1d9";
}
.far.fa-pause-circle:before {
content: "\f28c";
}
.far.fa-edit:before {
content: "\f044";
}
.far.fa-image:before {
content: "\f03e";
}
.far.fa-play-circle:before {
content: "\f01d";
}
.far.fa-plus-square:before {
content: "\f196";
}
.far.fa-question-circle:before {
content: "\f92c";
}
.far.fa-share-square:before {
content: "\f045";
}
.far.fa-smile:before {
content: "\f118";
}
.far.fa-snowflake:before {
content: "\f2dc";
}
.far.fa-futbol:before {
content: "\f1e3";
}
.far.fa-star-half:before {
content: "\f089";
}
.far.fa-star:before {
content: "\f006";
}
.far.fa-sticky-note:before {
content: "\f24a";
}
.far.fa-stop-circle:before {
content: "\f28e";
}
.far.fa-sun:before {
content: "\f185";
}
.far.fa-thumbs-down:before {
content: "\f088";
}
.far.fa-thumbs-up:before {
content: "\f087";
}
.far.fa-times-circle:before {
content: "\f05c";
}
.far.fa-window-close:before {
content: "\f2d4";
}
.far.fa-trash-alt:before {
content: "\f014";
}
.far.fa-user-circle:before {
content: "\f2be";
}
.far.fa-user:before {
content: "\f2c0";
}

File diff suppressed because one or more lines are too long

View file

@ -1 +0,0 @@
{"version":3,"sources":["v5-compat.css"],"names":[],"mappings":";;;;;;;;;;;AAaA,KACA,KAFA,KAGE,QAAA,aACA,KAAA,OAAA,OAAA,OAAA,KAAA,EAAA,YACA,UAAA,QACA,eAAA,KACA,uBAAA,YACA,wBAAA,UAEgB,0BAChB,QAAA,QAEgB,0BAChB,QAAA,QAEuB,iCACvB,QAAA,QAEkB,4BAClB,QAAA,QAEkB,4BAClB,QAAA,QAEkB,4BAClB,QAAA,QAEkB,4BAClB,QAAA,QAEwB,kCACxB,QAAA,QAEsB,gCACtB,QAAA,QAEiB,2BACjB,QAAA,QAEiB,2BACjB,QAAA,QAEe,yBACf,QAAA,QAEkB,4BAClB,QAAA,QAEuB,iCACvB,QAAA,QAE8B,wCAC9B,QAAA,QAEiB,2BACjB,QAAA,QAEgB,0BAChB,QAAA,QAEmB,6BACnB,QAAA,QAEiB,2BACjB,QAAA,QAEgB,0BAChB,QAAA,QAEc,wBACd,QAAA,QAEoB,8BACpB,QAAA,QAEkB,4BAClB,QAAA,QAEgB,0BAChB,QAAA,QAEyB,mCACzB,QAAA,QAEyB,mCACzB,QAAA,QAE0B,oCAC1B,QAAA,QAEuB,iCACvB,QAAA,QAEoB,8BACpB,QAAA,QAEgB,0BAChB,QAAA,QAEgB,0BAChB,QAAA,QAEgB,0BAChB,QAAA,QAEe,yBACf,QAAA,QAEc,wBACd,QAAA,QAEgB,0BAChB,QAAA,QAEgB,0BAChB,QAAA,QAEiB,2BACjB,QAAA,QAEkB,4BAClB,QAAA,QAEe,yBACf,QAAA,QAEgB,0BAChB,QAAA,QAEoB,8BACpB,QAAA,QAEe,yBACf,QAAA,QAEgB,0BAChB,QAAA,QAEe,yBACf,QAAA,QAEe,yBACf,QAAA,QAEiB,2BACjB,QAAA,QAEc,wBACd,QAAA,QAEkB,4BAClB,QAAA,QAEkB,4BAClB,QAAA,QAE2B,qCAC3B,QAAA,QAE2B,qCAC3B,QAAA,QAE4B,sCAC5B,QAAA,QAEyB,mCACzB,QAAA,QAEU,oBACV,QAAA,QAEgB,0BAChB,QAAA,QAEc,wBACd,QAAA,QAEc,wBACd,QAAA,QAEoB,8BACpB,QAAA,QAEoB,8BACpB,QAAA,QAEc,wBACd,QAAA,QAEmB,6BACnB,QAAA,QAEoB,8BACpB,QAAA,QAEuB,iCACvB,QAAA,QAEuB,iCACvB,QAAA,QAEwB,kCACxB,QAAA,QAEqB,+BACrB,QAAA,QAEkB,4BAClB,QAAA,QAEkB,4BAClB,QAAA,QAEY,sBACZ,QAAA,QAEW,qBACX,QAAA,QAEa,uBACb,QAAA,QAEkB,4BAClB,QAAA,QAEc,wBACd,QAAA,QAEgB,0BAChB,QAAA,QAEa,uBACb,QAAA,QAEc,wBACd,QAAA,QAEmB,6BACnB,QAAA,QAEkB,4BAClB,QAAA,QAEgB,0BAChB,QAAA,QAEe,yBACf,QAAA,QAEgB,0BAChB,QAAA,QAEgB,0BAChB,QAAA,QAEgB,0BAChB,QAAA,QAEU,oBACA,oBACV,QAAA,QAEc,wBACd,QAAA,QAEqB,+BACrB,QAAA,QAEc,wBACd,QAAA,QAEe,yBACf,QAAA,QAEU,oBACV,QAAA,QAEU,oBACV,QAAA,QAEY,sBACZ,QAAA,QAEiB,2BACjB,QAAA,QAEW,qBACX,QAAA,QAEY,sBACZ,QAAA,QAEe,yBACf,QAAA,QAEiB,2BACjB,QAAA,QAEqB,+BACrB,QAAA,QAEqB,+BACrB,QAAA,QAEsB,gCACtB,QAAA,QAEmB,6BACnB,QAAA,QAEgB,0BAChB,QAAA,OAEkB,4BAClB,QAAA,QAEmB,6BACnB,QAAA,QAEgB,0BAChB,QAAA,QAEe,yBACf,QAAA,QAES,mBACT,QAAA,QAEW,qBACX,QAAA,QAEc,wBACd,QAAA,QAEe,yBACf,QAAA,QAEa,uBACb,QAAA,QAEc,wBACd,QAAA,QAEW,qBACX,QAAA,QAEe,yBACf,QAAA,QAES,mBACT,QAAA,QAEkB,4BAClB,QAAA,QAEoB,8BACpB,QAAA,QAEU,oBACV,QAAA,QAEe,yBACf,QAAA,QAEiB,2BACjB,QAAA,QAEkB,4BAClB,QAAA,QAEU,oBACV,QAAA,QAEW,qBACX,QAAA,QAEiB,2BACjB,QAAA,QAEiB,2BACjB,QAAA,QAEqB,+BACrB,QAAA,QAEkB,4BAClB,QAAA,QAEW,qBACX,QAAA,QAEe,yBACf,QAAA,QAEY,sBACZ,QAAA,QAEe,yBACf,QAAA,QAEU,oBACV,QAAA,QAEiB,2BACjB,QAAA,QAEiB,2BACjB,QAAA,QAES,mBACT,QAAA,QAEiB,2BACjB,QAAA,QAEe,yBACf,QAAA,QAEkB,4BAClB,QAAA,QAEkB,4BAClB,QAAA,QAEe,yBACf,QAAA,QAEiB,2BACjB,QAAA,QAEU,oBACV,QAAA"}

File diff suppressed because it is too large Load diff

Before

Width:  |  Height:  |  Size: 469 KiB

File diff suppressed because one or more lines are too long

50
eleventy.config.drafts.js Normal file
View file

@ -0,0 +1,50 @@
function eleventyComputedPermalink() {
// When using `addGlobalData` and you *want* to return a function, you must nest functions like this.
// `addGlobalData` acts like a global data file and runs the top level function it receives.
return (data) => {
// Always skip during non-watch/serve builds
if(data.draft && !process.env.BUILD_DRAFTS) {
return false;
}
return data.permalink;
}
};
function eleventyComputedExcludeFromCollections() {
// When using `addGlobalData` and you *want* to return a function, you must nest functions like this.
// `addGlobalData` acts like a global data file and runs the top level function it receives.
return (data) => {
// Always exclude from non-watch/serve builds
if(data.draft && !process.env.BUILD_DRAFTS) {
return true;
}
return data.eleventyExcludeFromCollections;
}
};
module.exports.eleventyComputedPermalink = eleventyComputedPermalink;
module.exports.eleventyComputedExcludeFromCollections = eleventyComputedExcludeFromCollections;
module.exports = eleventyConfig => {
eleventyConfig.addGlobalData("eleventyComputed.permalink", eleventyComputedPermalink);
eleventyConfig.addGlobalData("eleventyComputed.eleventyExcludeFromCollections", eleventyComputedExcludeFromCollections);
let logged = false;
eleventyConfig.on("eleventy.before", ({runMode}) => {
let text = "Excluding";
// Only show drafts in serve/watch modes
if(runMode === "serve" || runMode === "watch") {
process.env.BUILD_DRAFTS = true;
text = "Including";
}
// Only log once.
if(!logged) {
console.log( `[11ty/eleventy-base-blog] ${text} drafts.` );
}
logged = true;
});
}

34
eleventy.config.images.js Normal file
View file

@ -0,0 +1,34 @@
const path = require("path");
const eleventyImage = require("@11ty/eleventy-img");
module.exports = eleventyConfig => {
function relativeToInputPath(inputPath, relativeFilePath) {
let split = inputPath.split("/");
split.pop();
return path.resolve(split.join(path.sep), relativeFilePath);
}
// Eleventy Image shortcode
// https://www.11ty.dev/docs/plugins/image/
eleventyConfig.addAsyncShortcode("image", async function imageShortcode(src, alt, widths, sizes) {
// Full list of formats here: https://www.11ty.dev/docs/plugins/image/#output-formats
// Warning: Avif can be resource-intensive so take care!
let formats = ["avif", "webp", "auto"];
let file = relativeToInputPath(this.page.inputPath, src);
let metadata = await eleventyImage(file, {
widths: widths || ["auto"],
formats,
outputDir: path.join(eleventyConfig.dir.output, "img"), // Advanced usage note: `eleventyConfig.dir` works here because were using addPlugin.
});
// TODO loading=eager and fetchpriority=high
let imageAttributes = {
alt,
sizes,
loading: "lazy",
decoding: "async",
};
return eleventyImage.generateHTML(metadata, imageAttributes);
});
};

146
eleventy.config.js Normal file
View file

@ -0,0 +1,146 @@
const { DateTime } = require("luxon");
const markdownItAnchor = require("markdown-it-anchor");
const pluginRss = require("@11ty/eleventy-plugin-rss");
const pluginSyntaxHighlight = require("@11ty/eleventy-plugin-syntaxhighlight");
const pluginBundle = require("@11ty/eleventy-plugin-bundle");
const pluginNavigation = require("@11ty/eleventy-navigation");
const { EleventyRenderPlugin } = require("@11ty/eleventy");
const { EleventyHtmlBasePlugin } = require("@11ty/eleventy");
const pluginDrafts = require("./eleventy.config.drafts.js");
const pluginImages = require("./eleventy.config.images.js");
const pluginTOC = require('eleventy-plugin-toc');
module.exports = function(eleventyConfig) {
// Copy the contents of the `public` folder to the output folder
// For example, `./public/css/` ends up in `_site/css/`
eleventyConfig.addPassthroughCopy({
"./public/": "/",
"./node_modules/prismjs/themes/prism-okaidia.css": "/css/prism-okaidia.css"
});
// Run Eleventy when these files change:
// https://www.11ty.dev/docs/watch-serve/#add-your-own-watch-targets
// Watch content images for the image pipeline.
eleventyConfig.addWatchTarget("content/**/*.{svg,webp,png,jpeg}");
// App plugins
eleventyConfig.addPlugin(pluginDrafts);
eleventyConfig.addPlugin(pluginImages);
// Official plugins
eleventyConfig.addPlugin(pluginRss);
eleventyConfig.addPlugin(pluginSyntaxHighlight, {
preAttributes: { tabindex: 0 }
});
eleventyConfig.addPlugin(pluginNavigation);
eleventyConfig.addPlugin(EleventyHtmlBasePlugin);
eleventyConfig.addPlugin(EleventyRenderPlugin);
eleventyConfig.addPlugin(pluginBundle);
eleventyConfig.addPlugin(pluginTOC, {
tags: ['h2'],
wrapper: 'div'
});
// Filters
eleventyConfig.addFilter("readableDate", (dateObj, format, zone) => {
// Formatting tokens for Luxon: https://moment.github.io/luxon/#/formatting?id=table-of-tokens
return DateTime.fromJSDate(dateObj, { zone: zone || "utc" }).toFormat(format || "dd LLLL yyyy");
});
eleventyConfig.addFilter('htmlDateString', (dateObj) => {
// dateObj input: https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#valid-date-string
return DateTime.fromJSDate(dateObj, {zone: 'utc'}).toFormat('yyyy-LL-dd');
});
// Get the first `n` elements of a collection.
eleventyConfig.addFilter("head", (array, n) => {
if(!Array.isArray(array) || array.length === 0) {
return [];
}
if( n < 0 ) {
return array.slice(n);
}
return array.slice(0, n);
});
// Return the smallest number argument
eleventyConfig.addFilter("min", (...numbers) => {
return Math.min.apply(null, numbers);
});
// Return all the tags used in a collection
eleventyConfig.addFilter("getAllTags", collection => {
let tagSet = new Set();
for(let item of collection) {
(item.data.tags || []).forEach(tag => tagSet.add(tag));
}
return Array.from(tagSet);
});
eleventyConfig.addFilter("filterTagList", function filterTagList(tags) {
return (tags || []).filter(tag => ["all", "nav", "post", "posts"].indexOf(tag) === -1);
});
// Customize Markdown library settings:
eleventyConfig.amendLibrary("md", mdLib => {
mdLib.use(markdownItAnchor, {
permalink: markdownItAnchor.permalink.ariaHidden({
placement: "after",
class: "header-anchor",
symbol: "#",
ariaHidden: false,
}),
level: [1,2,3,4],
slugify: eleventyConfig.getFilter("slugify")
});
});
// Features to make your build faster (when you need them)
// If your passthrough copy gets heavy and cumbersome, add this line
// to emulate the file copy on the dev server. Learn more:
// https://www.11ty.dev/docs/copy/#emulate-passthrough-copy-during-serve
// eleventyConfig.setServerPassthroughCopyBehavior("passthrough");
return {
// Control which files Eleventy will process
// e.g.: *.md, *.njk, *.html, *.liquid
templateFormats: [
"md",
"njk",
"html",
"liquid",
],
// Pre-process *.md files with: (default: `liquid`)
markdownTemplateEngine: "njk",
// Pre-process *.html files with: (default: `liquid`)
htmlTemplateEngine: "njk",
// These are all optional:
dir: {
input: "content", // default: "."
includes: "../_includes", // default: "_includes"
data: "../_data", // default: "_data"
output: "_site"
},
// -----------------------------------------------------------------
// Optional items:
// -----------------------------------------------------------------
// If your site deploys to a subdirectory, change `pathPrefix`.
// Read more: https://www.11ty.dev/docs/config/#deploy-to-a-subdirectory-with-a-path-prefix
// When paired with the HTML <base> plugin https://www.11ty.dev/docs/plugins/html-base/
// it will transform any absolute URLs in your HTML to include this
// folder name and does **not** affect where things go in the output folder.
pathPrefix: "/",
};
};

View file

@ -1,6 +0,0 @@
echo "STEP 1 - Generation des fichiers statics"
gulp
echo "STEP 2 - Remplacement dossier public par dossier temp"
rm -rf public
mv dist public

View file

@ -1,33 +0,0 @@
const { src, dest, parallel } = require('gulp');
const include = require('gulp-include');
const sass = require('gulp-sass');
const cleanCSS = require('gulp-clean-css');
sass.compiler = require('node-sass');
function html() {
return src('static/*')
.pipe(include())
.pipe(dest('dist'))
}
function dep() {
return src(['dep/**/*'])
.pipe(dest('dist/dep'));
}
function assets() {
return src(['assets/**/*'])
.pipe(dest('dist'));
}
function rules() {
return src(['rules/**/*'])
.pipe(dest('dist'));
}
exports.html = html;
exports.dep = dep;
exports.assets = assets;
exports.rules = rules;
exports.default = parallel(html, dep, assets, rules);

View file

@ -1 +0,0 @@
npm install gulp gulp-include gulp-sass gulp-clean-css node-sass

3644
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,10 +1,40 @@
{
"dependencies": {
"docsify": "^4.12.2",
"gulp": "^4.0.2",
"gulp-clean-css": "^4.3.0",
"gulp-include": "^2.4.1",
"gulp-sass": "^5.1.0",
"node-sass": "^7.0.1"
}
"name": "pelican-jdr",
"version": "1.0.0",
"description": "Un systeme de jdr sous forme d'un site 11ty",
"scripts": {
"build": "npx @11ty/eleventy",
"build-ghpages": "npx @11ty/eleventy --pathprefix=/eleventy-base-blog/",
"start": "npx @11ty/eleventy --serve --quiet",
"debug": "DEBUG=Eleventy* npx @11ty/eleventy",
"debugstart": "DEBUG=Eleventy* npx @11ty/eleventy --serve --quiet",
"benchmark": "DEBUG=Eleventy:Benchmark* npx @11ty/eleventy"
},
"repository": {
"type": "git",
"url": "git://git.kobold.cafe/jdr-et-univers/pelicanjdr"
},
"author": {
"name": "Kazhnuz",
"email": "kazhnuz@kobold.cafe",
"url": "https://kazhnuz.space"
},
"license": "CC BY-SA",
"engines": {
"node": ">=14"
},
"homepage": "https://pelicanjdr.kazhnuz.space",
"devDependencies": {
"@11ty/eleventy": "^2.0.1",
"@11ty/eleventy-img": "^3.1.0",
"@11ty/eleventy-navigation": "^0.3.5",
"@11ty/eleventy-plugin-bundle": "^1.0.4",
"@11ty/eleventy-plugin-rss": "^1.2.0",
"@11ty/eleventy-plugin-syntaxhighlight": "^5.0.0",
"luxon": "^3.3.0",
"markdown-it-anchor": "^8.6.7"
},
"dependencies": {
"eleventy-plugin-toc": "^1.1.5"
}
}

470
public/css/index.css Normal file
View file

@ -0,0 +1,470 @@
:root {
--color-gray-20: #e0e0e0;
--color-gray-50: #C0C0C0;
--color-gray-90: #002b36;
--sidebar-width: 260px;
--main-width: 780px;
/* --text-color is assigned to --color-gray-_ above */
--text-color-link: #4c2512;
--text-color-link-active: #4c2512;
--text-color-link-visited: #4c2512;
--text-color-title: #66350F;
--background-color: #FDF7E7;
--background-menu: #002b36;
--text-color: var(--color-gray-90);
--font-family: Inter,
-apple-system,
BlinkMacSystemFont,
'Segoe UI',
Cantarell,
Roboto,
Oxygen,
Ubuntu,
'Fira Sans',
'Droid Sans',
'Helvetica Neue',
sans-serif;
--font-family-monospace: Consolas, Menlo, Monaco, Andale Mono WT, Andale Mono, Lucida Console, Lucida Sans Typewriter, DejaVu Sans Mono, Bitstream Vera Sans Mono, Liberation Mono, Nimbus Mono L, Courier New, Courier, monospace;
--font-family-logo: serif;
--font-family-title:serif;
}
* {
box-sizing: border-box;
}
html,
body {
margin: 0 auto;
min-height:100%;
font-family: var(--font-family);
color: var(--text-color);
font-size: 16px;
}
body {
padding: 24px;
}
.wrapper {
max-width: var(--main-width);
margin: auto;
position: relative;
}
html {
overflow-y: scroll;
background-color: var(--background-color);
}
/* https://www.a11yproject.com/posts/how-to-hide-content/ */
.visually-hidden {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}
a[href] {
color: var(--text-color-link);
text-decoration: underline dashed 1px;
border-radius: 0.1rem;
text-decoration: underline dashed 1px;
text-underline-offset: 0.1rem;
}
a[href]:visited {
color: var(--text-color-link-visited);
}
a[href]:hover,
a[href]:active {
color: var(--text-color-link-active);
background-color: rgba(0,0,0,0.1);
text-decoration: none;
}
blockquote {
opacity: 75%;
border-left: 3px solid currentColor;
padding-left: 12px;
}
/* Direct Links / Markdown Headers */
.header-anchor {
text-decoration: none;
font-style: normal;
font-size: 1em;
margin-left: .1em;
}
a[href].header-anchor,
a[href].header-anchor:visited {
color: transparent;
}
a[href].header-anchor:focus,
a[href].header-anchor:hover {
text-decoration: underline;
}
a[href].header-anchor:focus,
:hover > a[href].header-anchor {
color: #aaa;
}
header {
background:center center url("/img/back.jpg");
background-repeat: no-repeat;
background-size: cover;
border-radius:3px;
height:240px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.8);
display:flex;
align-items: center;
justify-content: center;
}
h1, h2, h3, h4, h5, h6 {
color: var(--text-color-title);
font-family: var(--font-family-title);
line-height: 1;
}
h1 {
font-size: 3rem;
}
header h1 {
text-align: center;
}
header h1 a[href] {
font-size:5.5rem;
text-shadow: -2px -2px 0 #000,
0 -2px 0 #000,
2px -2px 0 #000,
2px 0 0 #000,
2px 2px 0 #000,
0 2px 0 #000,
-2px 2px 0 #000,
-2px 0 0 #000,
.05em .1em 0 #000;
font-weight: 900;
color:white!important;
text-decoration: none;
text-transform: uppercase;
display: block;
line-height: 1;
margin: 0;
padding: 0;
}
.quadrillage {
display:grid;
grid-template-columns : 1fr 1fr;
column-gap: 1rem;
}
#sidebar {
position: fixed;
top: 0;
left: 0;
border-right: 1px solid black;
background-color: var(--background-menu);
padding:12px;
height:100%;
box-shadow: 1px 0px 1px 0px rgba(0,0,0,0.4);
}
#sidebar.shown {
left: 0;
}
#sidebar > ul > li {
margin:0;
padding:3px;
}
main {
line-height:1.5rem;
margin: auto;
}
main img {
display: block;
max-width: 100%;
height: auto;
margin: auto;
}
.card,
#sidebar ul>li,
#links ul>li {
background-color: var(--background-menu);
}
#sidebar ul > li,
#links ul > li {
list-style: none;
font-weight: bold;
}
#more-info ol > li,
#more-info ul > li {
list-style: none;
}
#sidebar ul > li li,
#links ul>li li,
#more-info li {
border-radius:0px;
padding:0px;
margin:0px;
font-weight: normal;
border:0;
box-shadow: none;
}
ul.nav,
#sidebar ul li ul,
#links ul li ul,
#more-info ol {
padding:0;
margin:0;
list-style: none;
}
#sidebar ul li a,
#more-info ol li a {
display:block;
width:100%;
text-decoration:dashed;
color: white;
border-radius:3px;
padding:6px;
}
#more-info ol li a {
color: var(--text-color);
}
#links ul li > p {
padding: 3px;
margin:0;
}
#more-info h2 {
padding: 3px;
margin: 0;
font-size: 1rem;
}
#sidebar ul li li a,
#links ul li li a,
#more-info ol li a {
padding-left:18px;
}
#sidebar ul li a.active,
#sidebar ul li a:hover {
background-color: rgba(255, 255, 255, 0.3);
}
#more-info ol li a:hover,
#more-info ol li a.active {
background-color:rgba(0,0,0,0.1);
}
aside {
position: absolute;
top: 1px;
right: -264px;
height: 100%;
}
#more-info {
position: sticky;
top:12px;
border-left: 3px solid var(--text-color-title);
padding: 6px;
}
#sidebar {
min-width:var(--sidebar-width);
width:var(--sidebar-width);
z-index:10;
}
#more-info {
min-width: 240px;
width: 240px;
}
footer {
text-align:right;
width: 100%;
}
iframe {
border: none;
}
.menu-button {
display: none;
}
.well {
padding: .25rem 1.5rem;
background-color: rgba(24, 100, 171, .1);
border-radius: 8px;
}
.well.warning {
background-color:rgba(201, 42, 42, .1);
}
@media screen and (max-width: 1300px) {
.wrapper {
margin-left: var(--sidebar-width);
position: relative;
}
aside {
position: static !important;
}
#more-info {
position: static;
border-left: 3px solid var(--text-color-title);
padding: 6px;
}
}
.d-none {
display: none;
}
.icon {
display: inline-block;
width: 1em;
height: 1em;
stroke-width: 0;
stroke: currentColor;
fill: currentColor;
color: currentColor;
position: relative;
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
border: 0;
opacity: 0;
transition-delay: .8s;
transition-property: opacity;
transition-duration: 0.2s;
}
@media screen and (max-width: 1000px) {
#sidebar {
left: calc(-1* var(--sidebar-width));
}
.wrapper {
margin: .5rem;
}
.menu-button {
position: fixed;
bottom: 24px;
right: 24px;
background-color: rgba(0, 0, 0, 0.4);
color: white;
padding: 0.75em;
border: none;
font-size: 1.2rem;
display: flex;
align-content: center;
justify-content: center;
aspect-ratio: 1;
border-radius: 999px;
z-index: 12;
}
.menu-button:hover {
background-color: var(--text-color-link);
}
}
@media screen and (max-width: 600px) {
header h1 a[href] {
font-size: 5rem;
}
}
@media screen and (max-width: 460px) {
header h1 a[href] {
font-size: 4.5rem;
}
}
@media screen and (max-width: 390px) {
header h1 a[href] {
font-size: 4rem;
}
}
hgroup {
text-align: center;
margin-bottom: 2rem;
font-weight: bolder;
}
hgroup h1 {
margin-bottom:0;
}
hgroup h1 img {
image-rendering: pixelated;
filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.4));
}
table {
border-collapse: collapse;
width:100%;
border:0;
}
table.centered th, table.centered td {
text-align: center;
}
th, td {
border:0;
}
tr:hover {
background-color: #eee8d5;
}
tr {
border-bottom: 1px solid rgba(0,0,0,0.1);
}
thead tr {
border-bottom: 3px solid rgba(0,0,0,0.1);
}
th, td {
padding:.33rem .66rem;
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
public/img/cc-by-sa.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 772 B

BIN
public/img/favicon.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 B

BIN
public/img/kspace.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
public/img/logo.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B

BIN
public/img/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View file

@ -0,0 +1,18 @@
[
{"nom":"Faux mouscle", "effet":"+15 en FOR", "cout":650},
{"nom":"Bracelet de santé", "effet":"+15 en CON", "cout":650},
{"nom":"Chaussures de courses", "effet":"+15 en HAB", "cout":650},
{"nom":"Blouse intellectuelle", "effet":"+15 en INT", "cout":650},
{"nom":"Medaillon de philosophe", "effet":"+15 en SAG", "cout":650},
{"nom":"Porte-clef en peluche anti-stress", "effet":"+15 en VOL", "cout":650},
{"nom":"Cape de héros", "effet":"+15 en CHA", "cout":650},
{"nom":"Masque de voleur", "effet":"+15 en DIS", "cout":650},
{"nom":"Collier mignon", "effet":"+15 en REL", "cout":650},
{"nom":"Monocle ultime", "effet":"+15 en PER", "cout":650},
{"nom":"Débardeur d'acier", "effet":"+3 armure physique", "cout":850},
{"nom":"Joli clochette", "effet":"+1 armure spéciale", "cout":1050},
{"nom":"Accessoire stylé", "effet":"+1 armure morale", "cout":850},
{"nom":"Lunettes Blindées", "effet":"Protège de tout malus en perception", "cout":1050},
{"nom":"Masque de terreur", "effet":"En cas de jet de panique, 1D4. Si 4, un allié fait aussi un jet de panique. Sinon, un ennemi le fait", "cout":1500},
{"nom":"Slip divin", "effet":"+20 aux jets de survies", "cout":2550}
]

View file

@ -0,0 +1,7 @@
[
{"nom":"Mini-cristal à éclat", "effet":"Réserve de 5 éclat. Peut être rechargé pour un cout de 10.", "cout":100},
{"nom":"Petit cristal à éclat", "effet":"Réserve de 10 éclat. Peut être rechargé pour un cout de 20.", "cout":200},
{"nom":"Cristal à éclat", "effet":"Réserve de 20 éclat. Peut être rechargé pour un cout de 50.", "cout":500},
{"nom":"Grand cristal à éclat", "effet":"Réserve de 35 éclat. Peut être rechargé pour un cout de 100.", "cout":1000},
{"nom":"Cristal à éclat géante", "effet":"Réserve de 50 éclat. Peut être rechargé pour un cout de 250.", "cout":2500}
]

View file

@ -0,0 +1,7 @@
[
{"nom":"Mini-batterie à éclat", "effet":"Réserve de 5 éclat. Peut être rechargé pour un cout de 10.", "cout":100},
{"nom":"Petite batterie à éclat", "effet":"Réserve de 10 éclat. Peut être rechargé pour un cout de 20.", "cout":200},
{"nom":"Batterie à éclat", "effet":"Réserve de 20 éclat. Peut être rechargé pour un cout de 50.", "cout":500},
{"nom":"Grande batterie à éclat", "effet":"Réserve de 35 éclat. Peut être rechargé pour un cout de 100.", "cout":1000},
{"nom":"Batterie à éclat géante", "effet":"Réserve de 50 éclat. Peut être rechargé pour un cout de 250.", "cout":2500}
]

View file

@ -0,0 +1,15 @@
{
"name":"Cartomancia",
"vars":[
{"name":"determination01","value":"TODO"},
{"name":"determination19","value":"TODO"},
{"name":"determination20","value":"TODO"}
],
"objects":["base", "elements", "magique", "potions"],
"equipMains":["base", "arcs", "medieval-cac", "medieval-feu", "baguette"],
"effetsMains":["base", "magique"],
"tenues":["base","armures"],
"effetsTenues":["base", "magique"],
"accessoires":["base", "cristaleclat"],
"elements":["base", "metaphysique", "pseudo"]
}

15
public/jdr/core.json Normal file
View file

@ -0,0 +1,15 @@
{
"name":"Règles de bases",
"vars":[
{"name":"determination01","value":"Effet dépendant du JDR"},
{"name":"determination19","value":"Effet dépendant du JDR"},
{"name":"determination20","value":"Effet dépendant du JDR"}
],
"objects":["base"],
"equipMains":["base", "arcs"],
"effetsMains":["base"],
"tenues":["base","armures"],
"effetsTenues":["base"],
"accessoires":["base", "eclat"],
"elements":["base"]
}

View file

@ -0,0 +1,9 @@
[
{"nom":"Améliorée","effet":"x1.5 force","surcout":"+50%"},
{"nom":"Supérieur","effet":"x2 force","surcout":"+100%"},
{"nom":"Ultime","effet":"x3 force","surcout":"+200%"},
{"nom":"Non-léthal","effet":"Tout coup avec ne fera pas tomber en dessous de 0 PV","surcout":"+10%"},
{"nom":"Léthal","effet":"Double les chances de critique","surcout":"+50%"},
{"nom":"de verre","effet":"Double la force, mais ne peut être utilisé que deux fois","surcout":"+10%"},
{"nom":"À accroche","effet":"À besoin d'une main de moins","surcout":"+10%"}
]

View file

@ -0,0 +1,8 @@
[
{"nom":"Élémentaire","effet":"Produit l'effet de l'élément lié","surcout":"+25%"},
{"nom":"des Âmes","effet":"Chaque mort fait avec lui confère un dégât d'1PM qui sera aussi appliqué au héros","surcout":"+25%"},
{"nom":"Funeste","effet":"Provoque un jet de panique si réussite critique","surcout":"+100%"},
{"nom":"De sang","effet":"Provoque un jet d'affliction physique si réussite critique","surcout":"+100%"},
{"nom":"Des Héros","effet":"+50% force sur les créatures démoniaques","surcout":"+100%"},
{"nom":"Des Ombres","effet":"Fait 3 dégâts bruts (même si a échoué)","surcout":"+100%"}
]

View file

@ -0,0 +1,11 @@
[
{"nom":"Crystallisé","effet":"Brise armure : tous les 6 points de dégâts effectué, ajoute un malus en armure jusquà réparation.","surcout":"+100%"},
{"nom":"Mésophase","effet":"25% de chance de provoquer l'effet épuisement.","surcout":"+100%"},
{"nom":"Frigorifique","effet":"30 % de chance de provoquer la paralysie (personnage doit faire un jet de CON pour attaquer)","surcout":"+100%"},
{"nom":"Gaz Magnétisé","effet":"La moitié des dégâts de l'attaque ont 50% d'agir même si l'attaque à été esquivée.","surcout":"+100%"},
{"nom":"Éléctrique","effet":"50 % de chance de provoquer un effet de « stunt » sur lennemi.","surcout":"+100%"},
{"nom":"Biotechnologie","effet":"Ajoute un effet de vampirisme physique (50 % des dégâts effectués régénéré en tant que PV) à lattaque.","surcout":"+100%"},
{"nom":"Pyrolithique","effet":"60 % de chance de produire un effet « blessure/brûlure ». Si critique, blessure/brûlure grave.","surcout":"+100%"},
{"nom":"Laser","effet":"Semi perce-armure (si déjà semi perce-armure, full perce-armure)","surcout":"+100%"},
{"nom":"Nanotechnologie","effet":"Tout effet de brise armure ou brise-arme s'estomp à la fin de la partie","surcout":"+100%"}
]

Some files were not shown because too many files have changed in this diff Show more