Preheat oven to 350 degrees. Lightly spray the bottom of a 9x13 inch baking pan with cooking spray and set aside.
In a medium sized bowl, combine the flour, nuts (if using), and butter until crumbly dough forms. I usually use a fork or pastry blender for this, and sometimes my hands to get it combined well.
Spread evenly into the bottom of prepared baking pan, using your hands or the back of a spoon to get it evenly distributed. Bake in preheated oven for 15-20 minutes until dough is set and edges are golden brown. Set on a wire rack to cool.
In a medium sized bowl, beat together the cream cheese and powdered sugar with an electric mixer until smooth. Fold in 1 cup of the whipped topping, then spread over the cooled crust.
In a medium sized bowl, mix together the pudding mixes with the cold milk, then stir in the chopped Oreos. Allow to set just slightly, about 2-3 minutes, then spread over the top of the cream cheese layer.
Spread the rest of the container of whipped topping over the pudding layer. Chill dessert in the refrigerator for at least two hours. Top with more crushed Oreos and chocolate chips if desired. Enjoy!